 Wow 10 people are ready. Hey guys Hey, okay, let's see. I heard mark Baroon are you there? Yep. Okay baron. Yep. Okay Let's see Chris Fortress, okay Mike linear hey, hey, hello Rachel Yep, I'm here. Okay, and Rachel. Thank you again for taking notes often If you want someone else to volunteer because I know it's a lot of work Please let me know. Um, I definitely appreciate it. Yeah, stuff you do I am happy. I'm happy to have people help take notes The only reason I take notes is because I like being able to refer back to them So if other people feel like they can that would be great. Okay, cool Steve oh Okay, uh, Daniel crook Hello, hello, Joe Sherman Joe Sherman. All right Sarah are you there Sarah? All right, Ben Hertz thorn Hi, sorry. I was muted. This is Sarah. Hey Sarah Ben are you there? There we go. Good morning. Hello. Happy to be here. Sorry miss last week. I heard it was fun. It's always fun Klaus Yeah, I'm here. Okay Do we actually have somebody named Cambridge or is that the name of the city? Hi. Yeah, we have National here from Pivotal in Cambridge Boston. Oh, okay. Do me a favor add your guys names to the attendee list Hold on. Let me paste a link Do-do-do-do There's a link to the agenda if you guys can paste your name in there that way I can get your names recorded Or it to you there. Okay Clemens hello, I am All right, Mr. Rikowski Matt you there. Yeah, I think we lost Matt first. No, no, I'm here. I was just I'm by default and then I'm in my own entry in the Okay, got it. I can't leave you there. Yes. I'm here. All right Jim Curtis. Yep. I'm here Fabio They got Steve already right Steve are you there? Yes. Okay. Thank you Hey, this is Joe Sherman, I think my I was having dueling microphones here, so I am on the call. Gotcha. Thank you. Thanks Yep Let's see Yum, yes, this is why you're looking. Thank you William William right there. Yes Okay, what about Stanley Hello, I'm here All right, cool Did I miss anybody? Oh yarn. Hi Yep Okay, is there anybody on the call who's does not have an asterix next to their name in the attendee list This John Mitchell from FDT My machine just crashed so I'm rebooting Gotcha. Okay Hey, this is Austin from serverless. Hey, Austin, I assume you're in the car, right? Yes, I am. All right Okay, anybody else on the call that it doesn't have a little asterix next to their name Alex from serverless, I just added my name. Okay, cool and the asterix. Thank you Anybody else Hello, Doug. This is Girish. Can I just add my name? It's nice not there on the list Yeah, add your name to the list. Yes, and then we'll put up someone put an asterix All right, and with that I think we are ready to go catch everybody else later so Let's see in terms of the agenda Actually, there is one thing I Wanted to switch the order of hold on a sec So I feel a little bad Kathy did not get a chance to finish her quick little With his source on the last call because there is You had so many questions So I agreed to give her another five minutes just to quickly finish up her point of view And then we can quickly move on to the other agenda items And I did want to get that out of the way because I feel bad that we didn't get a chance for all four people to finish their work So Kathy, do you want to go ahead and share your screen or just talk to it? Which one would be easiest for you? Okay. Yeah, I can share my screen. Okay Could you um, Doug would you mind to go over other Um item first. Let me find my slide and bring it up Okay, that's fine. We could try to make it through the some of the uh, I think easy PRs that are available Let's take the first one here. Um one it's one eleven This one there's there's a link to in the chat Um, actually hold on a minute. Let me go ahead and share my screen. It might be easier for people Okay So on this one Um in terms of changes all I did is made sort of a an index list of Of a material that we're adding for people to share, you know, presentations and stuff like that for me The meetings or conferences I believe on last week's call they people asked for that for an index as opposed to just a directory for things to be put in That way we can also have pointers to things that are not kept in our directory. And I think here's a good example from Sarah And I don't believe there have really been any comments on this one. So let me just double check Yeah, no real comments. So are there any questions or concerns with this one? Okay, any objection then to merging this one? All right, cool. All right, cool. Okay, moving on next one Clemens number 90 Would you like to quickly talk to this one? Let me get the link to the chat when I suck um Here you go This is the definition of occurrence. It seemed like the the chat on this one died down. So I'm hoping it means it's Okay with everybody Yes, and I think yeah, so I the the request was to add further examples, so I put the for example sentence there Yep, right there. Okay Any comments on this one? Okay, any concerns? We have three more seconds to read to read all the yeah, please go ahead. Sorry So this address is the action item above should we strike through that? Right, I believe so just to double check Clemens we can mark this one as this ai right here is done, right? We had talked this through and it was I think the consensus was was fine, but Um, there was example context was taken out of the original and I moved that back in Right, but we just want to make sure that this is the ai that we're talking about for your pr, right? Yes, that's that's the that's the one Okay, cool All right, any comments concerns? All right, any objection then to approving this one? All right done. Thank you guys. All right. This one. I'm hoping this isn't controversial since it's it's been sitting there for a while um this one um Let me have the commenter a sec so this one I don't remember what initiated this but there was a desire to make the What is it the goals section? Or I didn't know the status section had the status section of the spec Basically talk about what our current or what we're currently doing which is basically just defining The abstract definition of the extra metadata for an event It does talk about how we may do something else in the future, but it's still tbd Well, I thought it wasn't tbd Well, it depends on whether we merge your pr, right? So I I guess that these those two prs do kind of overlap a little Well, I mean, it's it's kind of a big point It's like if we're not actually trying to achieve interoperability, then I'm not sure what we're doing Well, we are Yeah, I I tend to agree that we should uh aspire to having uh protocol mappings for the properties Okay, so let me ask this question. Is it would it make sense then to Uh, completely kill this pr in favor of sarahs and have had that basically resolve both or Is it worthwhile to have the current status of what we've agreed to which is at least the abstract definition? I'm okay either way Can we just hold this until after the other discussion? That's fair. Okay. Any any objection to holding it? Okay Um, but uh, okay clements next one the definition of events. Let me paste a link to the chat Let me just double check. I think this one So sarah you had a comment six minutes ago. I just noticed is this a blocking comments? Um, hang on sorry So yeah, I mean I think that um Generally like what I can't think of any reason an event would identify its destination In fact, I think that subverts the main goal of the Okay, I sound like this was actually for two reasons the one that sounds like there is some discussion around your comment That needs to happen and then clements that you need to rebase if nothing else So perhaps we need to move this one off the easy to review list and do deal with that later I'm going to take it offline. Is that fair? Yes, it's fine. Okay. Cool. I can take I have no objection to taking the generally out Oh, good. Okay Since that was not a protocol definition I didn't want this to be Dealing in absolutes, but I'm okay with with taking the generally off and then I'm going to rebase Okay, thanks So we should be able to adjust that hopefully over the next week And there was one that I had on the list from Austin But unfortunately some new comments you added recently which I think might require some changes So I wanted to suggest we skip that one for now if that's okay And I think that's it in terms of what I classify as the easy potential prs Um, Kathy, are you ready to present your stuff yet? Yeah, I'm ready. Okay, so let me Share Um, can you can you see my slide? Yes. Yes. Okay, so let me go to the Let me go to the How can I minimize this? I'm sorry. Okay You can see the slide, right? Okay. Um, so this is the example on actually the same example I presented last time on So if there's like, you know, for example on this your case, there are two events that two events is going to It's part of the Same serverless application. So when the burst of events happened, for example, if for the window open and also the Motion detection event that that could happen at many different houses, right? So when the Um, when the serverless platform receive all those events Is needs a way to know to correlate, you know, the event a and event b For example, the motion event and the window open event or door open event From the same house basically, um So that, you know, it can process, you know, it Um, correctly. So there could be many instances execution is function execution instances for each house There's a function execution instance So the problem is we need a way to correlate On those events correctly We could receive multiple motion On detection events and multiple on door window open events. So how do we correlate them together? I think that's a problem. Um I think this is a it's this just an example. There are many other use cases which will need, you know, um The mechanism to correlate them together. So the proposal is to um provide We need to define a correlation token in the event And that correlation token is used to correlate all the events associated with the same Functional application instance Such as, you know, that token can identify say, oh This is an event come from for example, Kathy's house or whatever And that token could be any string that uniquely identify the application event instance um For this example, it's uh, it could be, you know A house address or whatever other unique string But for other examples, it could be um, for example, if for a travel request, it could be a travel request ID um For any other effort, I mean different. So my point is different application that string will be different But it needs to be a unique string Um that also for different event types, this token could sit in different location of the event data um So I think, you know, we should not put any restriction on the location of the token in the event data because um Because that that's not I think that's not feasible or it's not a good way. Um because there's so many different event types And especially in iot scenarios the all those device Equipments are manufactured by different vendors So I think, you know, one way to do this is the token field can be identified by For example, a path string which specify the location of a token in the event data, you know No, why do you want why do you want people to deserialize the message in order to figure it out? I think the general idea was that the source is part of the context or the header portion So we need a way to identify the uh, the location of that coronation token Right So you're you're on you're on hold on hold on a second I'd like to keep Oh, I thought like let's let Kathy finish and then you people get a chance to ask Clarifying questions because we don't really have time to go back and forth on the design My discussion So let's hold off on that Kathy Can you can you you're basically out of time so you can just finish up your your side of things and then we get people To ask clarifying questions if they have any Yeah, okay, so um, so the the okay, so as we discussed last last time right the source, you know could be Storage device and then you know and then but you know For this case right if this, um Um motion detection event if we define the source as that Um picture if when the picture is saved to a storage we define the source as a storage and then we need a way to identify the you know the correlation token so that will be part of the um That correlation token should be in the data the event data Then I think we need a way to do that So that's why I'm suggesting Our location path will be The way to do that that in that way no matter Where that path is where that location token is located in the event data No matter what kind of event source We have a generic way of doing that. Yeah, I think that's all Okay, thank you. Now keep in mind let's keep questions just to clarifying questions not Trying to convince people one way or the other So are there any questions in terms of just understanding what Kathy was talking about? I do have a question. Okay the When we were talking earlier about the source being a uri and that the structure of that uri will be different for different types of Events and different implementations Would something like the the house from which there are multiple iot devices Wouldn't that be a portion of that uri? In order to get like from all the way from the most generic down to the to the specific device Can't you get this this kind of correlation for something like that from a component of the source as a uri? Yes, yes, I think that's that's that's that information that correlation token information will be in that uri But we need a way to to say as you just mentioned different sources in the different event types They could be in different day that uri is a string right in different location of that uri So we need a pass for example here I give an example if it's in the htdb header api gateway It might be you know headers baldy and then something, you know, and then if he's in like A storage it could be like some records and then some whatever metadata OBS and only when the vendor defined That I think the question is why not just place the actual url In the source. Why do we need this in direction where the content type of the message is ambiguous the schema is ambiguous? All that why not just plant the uri which has sort of a namespace and you know a house number or type etc Okay, wait wait wait guys guys hold up I'm gonna have to call time here because I feel like we're getting into design discussions And I think the idea The abstract idea of just having a correlation token is what she wanted to get across and we can talk about Within the pr itself the best way to represent that or even to have it at all so at this time I'd like to call time on this part of the discussion because I just want to get kathy a chance to present her view And kathy I think the next step here would be for you to open up a poll request for them people to have Follow-on discussions around how best to do this at all. Does that make sense? Well, I have a question. Um, just about the it's it seems like from your example kathy that There may be some time to be like multiple um, multiple pieces of data right that Somebody could want to correlate, right? It could be like This particular house and windows in the house or something So I just wanted to I was curious whether that's something you've you've thought through and and just read maybe I could just If you can speak to that now or maybe address that through that consideration. Um in a subsequent um poll request or I'd like kathy if possible. Can you address that within the pr itself? Um, okay, um Okay, I'm not very Sure, I understand the question. So it could be any that that's so let me just Express my view so that correlation token could be anything. Okay. If you think, you know, it need to go to the you know, um That granularity a final granularity level Yeah, just specify that. Um, so different use cases different application could have different correlation token So the way so I think, you know, um, we need a correlation token to correlate these events But how to define it, you know, I think, you know, because oh, there's so many different use cases. So I think A location field No matter so no matter where you put it. It's ui, right? But inside that ui where it is Where is that correlation token? I have a question on this. Yeah, what do you see as the difference between this field? and the subject and or title field you would see in typical messaging systems because that seems to be That further scoping that you're asking for how's that how's what you're proposing different from object field in typical messaging system Yeah Yeah, just a object. So we're gonna say object field. I assume you're talking about the correlation token object field, right? So I'm just what I'm specifically talking about is is prior art So there's the messaging systems. Um, whether they are Events-based or whether they are uh caring messages Most of them have a notion or very many of them have a notion of a description of the content of the message that is allows for a broad description of any shape That field is sometimes called subject Sometimes that field is called title. And so the question is how your proposal here differs from those approaches Okay, so if it was subject or it's called the title, whatever it's called as long as it's a So so as you said it could be called for different Feel different names, right? I think here we what we need is a correlation token. Um Of course, my question is what is that correlation token correlate with And how is that different? Well, I mean Matt Matt Matt no, no, I I'm gonna have to call time here. I'm sorry to be a little bit of a dictator But we really need to get on to other subjects and this wasn't meant for a time of a deep discussion I think she made her point clear about what she's looking for And let's save the discussion of the design and how it relates to other fields for the pr itself This isn't the time to dive into this. This was simply a matter of letting Kathy finish her her speech from last time So I'm gonna have to call time here. I mean to not be happy discussions. Just not at this particular point in time Can I make a dug? This is what this is more of a Um proposal for how we like handle these sorts of moments. Would it be acceptable? Like I don't think this is in a place Where we could really propose a pr Could we could we have like a place where we just continue the conversation in written form since there's still a lot Of conversation people want to have well people are very free to talk about these things offline But I would my preferred approach is to have people discuss these things either through an issue or a poor request Um, because I think that that helps focus the discussions and people can have offline discussions But on this call right now, I'd like to get back to what I've heard from everybody for the most part of The most important issue we just that we need to resolve which is the scope of what we're doing And that's why I'm trying to get back to that conversation. So Maybe um, Kathy could make sure that this is covered in the use cases And then open an issue describing the problem That needs to be solved and we could start to talk about that because I think sometimes Um, we're we're getting overly precise in the proposal and without Sketching load that really digging into the problem that needs to be solved And that might be inhibiting conversation. I agree. The long observation I was going to make Doug was that Some of the things she said here would be best embodied in a use case And we need to tease out what people are seeing in terms of an example As she's been saying it's it's an example that the value can be anything So people are inferring too much. So we need to capture the use case I agree. So Kathy, please take the action item to write up your use case and potentially pr If you feel comfortable doing that but at least start with the use cases and get the discussion going someplace Whether it's an issue You know or pr that's your choice in terms of how you want to move forward Yeah, yeah, I can write up this and propose pr But I think you know, um, sometimes I feel it's good to have a interactive discussion in the meeting um I agree. But Kathy you have to understand the the point of this part of the discussion was not to Proport a proposal to have a discussion. This was to put your point of view about what is source It wasn't to have a deep discussion about it Okay I'm not I'm not Kind of shut down the conversation other than I just want to make sure you had the the chance to finish up Your five minutes and we got way over that Yeah, okay. I'm fine. You know, maybe uh, yeah, I think we can do that But actually I have another suggestion Maybe we can have some surprise session to Pull the people together to discuss Yes Um, and that that that that that that is on the agenda. Kathy. Yes. Sure. Okay Do you have a favor and uh, stop there you go. Let me go back to your mind Okay, so Sarah, um draft design discussion aren't I'm sorry design goals You want to leave that discussion because what I'd like to do if possible in this call is I know that There are quite a few comments in the pr itself For things that I would consider more of a syntactical change more than anything else And I'm wondering if maybe we can at this point in time talk about some of the higher design goals of what you're trying to get here or design The design goals that you want to go forward here and get those discussions going right now. Does that make sense? Yes, um, in fact, um, Thanks everybody for the feedback. I have oops I wanted to put this in a google doc so people could I'm going to just outdent this we can delete it later or move it but um I sort of rift off of um clemen's suggestion that we do this with like user stories Um, and so I'd like to go through the personas and user stories That was sort of inspired by one of the comments that clemen said and see if we can get a degree on this Like what what we're trying to achieve in the form of user stories This is I think something we did with the white paper that was like sort of helpful in clarifying things Sarah do you want to do you want to share your screen or you want me to just keep sharing mine? Keep sharing your screen. It's in the um, sorry go back to the notes. I've just pasted something into the notes Okay, hold on a second. Um Or I can share I don't know why my machine's other but that's very slow Uh, where in the nose? The minutes, sorry. Oh the minutes. I'm sorry Doi just because then people can like add comments and and um, I think there's a There's a number of there's a lot of people on the call So if people have like wordsmithing thing you can just make suggested edits if people have, you know, like So then we can do some uh more dynamic stuff that people have access to the notes that are like smaller nits Just feel free to like put in suggested edits, but I wanted to walk through this section which is um I was I was working on this As a pr last night this morning and I I just kind of had an open question So this is as far as I got and I think that this this high level framework might help the conversation So um, so this is the sort of the introduction to the goal section um where I changed Can to made a can but the the key thing is that we have um, I believe that the main thing that would like the the sort of We're trying to enable this application developer persona That could create a new application right that includes event and consumer And then the other actors here is we have somebody who's developing an event source, right? But that's the person who creates the code that is going to emit events There's a publisher that operates the event source And then there's the consumer developer who creates the code for an event consumer and if it's useful we can also have the publisher of that um and then I came up with these three stories two of them were um a little modified from what Clemens wrote But basically the first one is as an application developer. I can create an application without modifying um There needs to be some more words there where the developer may not have access Access to modify the code in the event source or the event consumer So I think there's like some missing words, but um the idea is We're decoupling the development of these things um And that could be because we have two teams, right that we want to decouple their release cycles um, or it could be that they're actually A third party event sources event consumers and there was some question I think a lot of folks um in the group are coming from um trying to figure out the serverless thing And I wanted to point out that like I I came up with a a use case That's that I commented on this morning where you could imagine that in the future We could have consumers that are pre-packaged. You could imagine that somebody who has um uh, uh, some kind of sms service, right or like pager service could could um It could say like oh all the um, you know, there's a set of events that automatically have turned into natural language it if you hook up my sms service to your to these event types, right? Then so that you could have event sources that are sort of prepackaged managed services and you could have event consumers and actions, right that are um Pre-packaged in some way and then developers can then like string these together And then maybe eventually end users and stuff Um, but that would be all like software that people would be building around this event ecosystem So then as event publisher I want to make the event available in a way that it can be distributed to other software services And that other software can get at some particularly interesting subset with minimal effort Meaning like there's probably some stuff in the middle that they can delegate to right They could then be done by another third party implemented by Um, and then there's the event consumer as an event consumer I want to have enough fidelity in the event metadata so that There might be generic middleware that can select and deliver a subset of events Um for and for there to be enough Fidelity in that metadata for local dispatch to an action Um, and I would really like to have a story in here for the like The the people developing the middleware, but I didn't but that could be a gateway. I didn't know quite what what the good uh Like what is the persona for the um person or for the developer who is um creating like middleware libraries or um gateways or transport mechanisms Um, it might be good to have a persona for that But isn't the consumer the actual, you know, like function or microservice that you know takes it, you know takes a stream and acts on it Yes And um, as you pointed out if that's your on there might be some transport in the middle There might be a gateway in the middle that is um, I would suggest We don't use the same term For the thing that is routing the events as the thing that eventually consumes them Because the um, like as we've seen in some of these source conversations The idea is that you have a source that's submitting events and then you have something that says I want this event to go to this destination Um, but in between there might be a bunch of hops Right the consumer is the endpoint or the router in your that we agree on that the endpoint, right? So maybe the consumer the consumer is is the endpoint and then you have some form of middleware and middleware is a broad term that um, I would not call it action because action is the thing that you do as a You consume you take the event and then you do some local Stuff with it and that might be in action So the the action term that we talked about before it's not an accepted pr But we did do the talk through the event concepts and I borrowed the action word from um, IBM open whisk which seems to have like the most Well thought out in my mind Like just like naming of things that it you know seemed clear to me and so because not Everything not every destination would be a function necessarily. I wanted to have a generic term. So I'm just I'm just In in that in the middleware space and that's kind of the perspective I've been taking producer and consumer are the Those generic terms and then the consumer will take the event and then we'll do something with it And part and and what it might do might be in action That but it's not necessarily in action. That's why and you can if slash is fine Yeah, so for now, I'll just do slash but you're not saying that the consumer is the middleware, right? No, no, no, that's that so that's my point. So there's that the Speaking of middleware is there is some piece that is Between the publisher and the consumer Um, and and it doesn't I don't think there's an implication here that that piece that sits between those two Is a networked resources might just be a framework And you might have an event publisher and an event consumer that live Peacefully together in process and exchange cloud event events Um, I I think that I don't think middleware is is such that it needs to be, you know, a central broker thing But it is it is the piece of software that Um, the couples ultimately publisher for good from from the consumer But Clemens that accounts for the serverless use case. Does it account for like that? Like the I think that the reason to include middleware explicitly is for the iot use cases um How do you think they're different? Yeah, right. Well, you know, it could be a messaging system It could be again within the same process of a, you know, uh, raspberry pi you could have a Something emitting an event and something addressing it I think of this I think of this in a very generic way and that's also I don't know whether you have the I put an issue in um This week in the beginning of the week I think issue 112 where I go over some prior art that i'm referencing and Well, I'm basically going through some of the Topology choices that are being made by some by existing middleware and how they use the concepts that we have here So and and I think and I think and if you and I actually Sights for examples for iot infrastructures that being aws iot. What's an iot? Azure iot having cloud iot core from google um And how they use those things and I think the concept that we have right now And also those definitions that we have have here Also fit those cases So I think Clemens you You did a lot of I read your your requests and I think um, uh, your pull request or your issue whatever it was And I think I think rachel's done some work to kind of tease it apart and put it in with I think there was like a set of meetings where we talked a lot about Prior art and there's been some work in the repo on that So I think you're right on with that and very much in the spirit of what has been discussed in this group um, so So I think the question is I just drafted here It would be people be comfortable with calling the middleware developer Like inclusive as Clemens suggests that it could be an API gateway or router or software framework It's like all the things in between publisher and consumers that is a reasonable Way to message the system is quite common It would be One more time. It was hard for me to understand. I'm saying or a messaging system would be quite common So christian does the middleware understand and be able to interpret the events? I think I would say yes in the in the in the sense that you may need to transform translate Or do other operations on the events going through there as a possibility not not as a rule Uh, I think the middleware will receive an event. Maybe translate it process it and emit another event Well, the idea is that it would it would it may Adjust the format, but it would be the same event, right? So it might say we might go from HTTP to some internal protocol that is more optimized for that system Like some binary protocol, right rather than a text protocol, but it would be the same event So the identifier would be the same the source would be the same. Is that right? Yeah, so so these these common attributes that we're describing Would all be the same but they might be encoded differently because that transport requires a different encoding for some reason Can you add the preference is that it won't get dive into the data Body, you know the body of the message unless it really needs because it may also be encrypted it We have a we have a principle here On on when it is a consumer and when it's not And that is if so so as soon as you touch the body of the message You're a consumer and then and then you do you may do a transform But then you're producing a new message Which means now you're a consumer on one end and you're a producer on the other end If you're simply doing a transcoding, which means you're leaving the body of the message alone But you're basically just moving it from one Transport mapping to the next Then you're still in the middleware I think we need to leave this a little bit open because there's this whole question of like What is the body of that message? So I think the key thing that I would like to capture is you're not changing the meaning of it Right Right, there's also a third condition. You mentioned changing the body or only doing a transform and not changing anything What about when you are allowed to change the context and not the body and by body I mean specifically the field that we have in the spec called body or called data Yeah, I think of that as the as the body that you can't get you can't change We have a in if I may cite prior art again In AQP we have a specific protection for some core properties that belong to the message Where the protocol states that the middleware can't touch them like they can't the middleware can't modify them at all And they have to do with You know, whatever the the descriptive information for the message body the system put in there Like for instance, the subject is unchangeable. The the logical destination is unchangeable, which we don't have here But the logical source information is unchangeable. All those things are unchangeable So that the middleware has very clear rules and in the middleware has annotation fields that it can't go and add and remove and do things with As it as it hands the the message for processing um to different places so um So I'd love to so I think that that's a good example and what exactly why I want to keep this like really High level about our intent like what what are the goals? for each of these personas and then um, and so uh, what I'd like is like to invite folks who haven't spoken yet to comment on the personas particularly if You represent one of those personas So I have a question here. So here um, so that we have an event publisher What is the difference between this and the event source? So that's a great question. Um, well at one in one of the conversations we talked about that you might have um I give you if if there was some open source ftp server That had events about when things are uploaded and and so forth um, you that might actually be Hosted by multiple companies So the publisher is the operator And the developer is like I am creating some software that emits events that might be hosted like, you know They'll they'll there will have to be a way to say. Oh, I'm using this ftp server that is hosted at google and a different one that is hosted at acme And a different one that is hosted at, you know, another company. It's the same software, but the source is different So you are saying the source is the source developer is the person who creates the software that actually, you know Like constructs the event right So you're saying there is sort of a class of the event Which is ftp thing and there is where does it origin form which is the source? So have we decided okay, so here I think we're more from developer point of view, but I think, you know from a Southern point of view, right? Um Like, you know, what is the source? What is the publisher? What is the action development action? um, so just, you know, I use the example I gave that use case on the sensor to detect the Motion and then there will be that picture was stored in the storage So what is the event source in that case? What is the event publisher? So I think at this point what I'd like to do is identify the actors, right? So the idea is the the Source developer is the thing emitting the event the thing that is and it's up to the developer to say Am I so you could have these these three developers, right? So I'm going to move the the publisher out of the way a little bit The operators I think are important actors as well But but if you just think of the three developers right in terms of source Whether you are the source or you're the middleware Totally depends on this code you write right like if The piece of software I write leaves the meaning intact Then I'm middleware if the piece of software I write Takes in information And then changes the event type Then I'm a source Right, it all depends on whether you're emitting your own events But Sarah does it really matter? I mean whether you have a piece of middleware that does nothing but sort adds extra data to it In the end Whether it's modifying the the events or not it still becomes a source as the minute it transmits that to somebody else doesn't it? well, um, like if you think about like um, like a normal message like Actually, I think it is completely different right so It's I think that we need language to discuss The parts of the system that are just doing transport Where they're they're getting something from source to destination Versus the things that are like I am emitting events and then they may be one in a pipeline But they really have the same concern as the original source of the event Okay, I think I think the problem is is middleware is an unrelated term. I think that if you rely upon um historical Models you would use terms that are more ambiguous like modifier observer and producer More generic. I think those terms would we resonate more with me anyway modifier observer and producer observer doesn't change It's quite clear from the name what it means. It's not overloaded like middleware Um, so but what would you call the transport? Observer if they don't touch it you observe it and pass it along if you're a producer You're obviously created if you're a modifier you've augmented it in some way um It's it's actually it's a model it goes back to the 70s has been used Okay, so I just have not heard observer to include like a messaging system Yeah, you It's part of any type of transcoding message pipeline. These are the terms that are typically used in in the industry So you would say absent event observer developer seems like that is your Yeah I mean, I just use middleware for somebody else through it out. So Um, I'm fine with observer before the we need consumer. So where's the concern? So then there's the consumer slash accident action. We can argue the exact words But that this is the the code that eventually that where they are going to do something based on the event where um Their purpose is to act on it and be decoupled from The source, right? So this is where it it's really only meaningful in terms of you want a developer who can couple the source and the consumer Without modifying either one potentially so, um, so if the if a system device that modifies the event um Does it become the new source the source? If it changes its meaning. Yes, if it doesn't change its meaning then it's an observer When you say meaning what does that's not very, um, well, I'm leaving it intentionally general because I think we have yet to discuss thoroughly the What does it mean to encode something and what is a concern of transport? When does a format change acceptable is the body opaque? Like there's a bunch of open questions and so I would just like to sort of bracket them in, you know, like We will still discuss what it means to change the meaning like, you know, like I mean, I have an opinion that like format changes shouldn't matter because I think we'll have to go from text to binary protocols and so forth without worrying about, um Without saying like I'm a new source um But um, but I want to try to do a a um, I'm open to a different term but I I don't want to dive into the specific details of the Specification and I want to somehow explain um, what an observer is allowed to do, right? So I can In here This is a little different from the way that I've heard observers used before that an observer could actually change the format and We transmit it. Um, but if people are like that term and and have more experience with um Standard bodies in this area. I'm like, you know, I just want a word that we all agree on You can call it. I mean if you want to call it a transporter um It depends on it depends on if you change the origination data or not Okay, I'll just change it to I'll just do the same thing. We'll do observer slash transport and we can separate them later or I think it's more So sire looks like, you know, we still leave the definition of the source open, right? um Is that right? What is that what you mean? So, um, like the precise definition of the source in terms of its attributes but I think generally here what we're saying is that the um, I think that we were missing as a event source developer I think that this is Yeah, so so the reason I mean the reason I didn't use transporter is transfer implies that you're a pipe And you don't do anything with the message. So you would never even put it in your model So observer implies you you're including your model because it's doing something So how about the producer you mean the producer is the originating originating Well event originator the original event um place You mean that? No, I would I would separate originator from crater crater. It would be the crater of the event in the format we're trying to define Um, so here. So I'm adding as an event source developer I can define new event types or use existing Event types that are meaningful representations of my system state state changes or something like that So, I mean the legacy term for all eventing is the origination event is basically the actual event the physical A message being created the actual source. That's what we always call the origination event Right, and I think that we're trying to model systems where we can allow a Software service that does a database mutation Based on an iot device Yep, so Agreed where it decides it's a source even though the it actually The the data originated elsewhere, right? Yeah, you need to enable those use cases. I was just clarifying for Kathy in my mind So just a little time check here because we have less than nine minutes left And I know we're making lots of good progress here But what I'd like to do is to suggest that we have a follow-on meeting not next thursday Um, but before then and uh, sarah I was wondering if you would take The action item to to try to set that up because I think I think we need some more discussions here And this one hour a week isn't sufficient for that. So, yeah, I think that this was a good start and um, I will maybe Would people like would it be helpful to move this into a google doc so that people can like sort of It's it's maybe a little more malleable than a pull request or I can put this back in the pull request I think in google doc is good, you know, so we can you know give comments easily Yes, it's so fluid right now. Maybe google doc would be best But I think we also need another an additional phone call during the week So, yeah, I'll propose a time for the phone call, but also make sure that there's an opportunity for async feedback Okay, now without getting into that Continue the discussion of the design itself for the wording here Are there any high-level things people want to bring up relative to the process? We're going to follow to try to resolve this meaning Sarah's going to set up the google doc Sarah's going to set up another time for us to talk during the week Is there anything else people wanted to bring up from a process perspective? Okay, in that case, I think we had the next steps on that one And before we run out of time, I wanted to basically have almost the exact same conversation or process question or discussion around what is the source, but I'm sorry not what is Actually, so what's interesting Sarah is your discussion there originally started out talking about what are our design goals But it seems like you're now getting into discussing. What is the source? Am I interpreting that correctly so we could probably merge those two discussions? Well, I actually think that they I I'd like to sequence them because I think there's the sort of like at a high level What what need to reach what problem are we trying to solve with defining the source, right? And then there's like, okay, let's let's get into it with the attributes and exactly what do we mean and so i'm trying to like The um trying to use this like user story language To get like really high level And then that should help that source discussion. Okay, then we can have words to describe Oh, this is the transport. This is the observer. This is the whatever we decide to call it Okay, then I think what you're Probably then suggesting is we we don't schedule a call for what is the source discussion until we after you finish your your ais, correct? Yes, I would I would like that. Okay. Is there any objection then to holding off on that? I think it makes sense. Okay anybody else Also, I I saw Clemson recent notion on the topic and I don't think that what we're calling here source is what Clemson called topic So I I actually think that those that that's Merely a matter of how we look at that construct and it's actually the same thing um, and it has to do with with It really is a matter of perspective and And that's also why what we're doing here is useful because we're now putting different perspectives on things If you're someone who sends a message You have a perspective towards the middle where if you someone who consumes the message You have a perspective towards the middle where if you're writing the middle where you also have a perspective And all of those come together in a reasonable term Um, and there's prior art for that that people have been coming to that point But we should go and arrive at a at a conclusion from Us doing a joint analysis, and I think this is a good good place to do this So I think from from my perspective the what we have no notion as source Really doesn't differ from where the rest of the the middle where community landed Okay, so not I don't think we have time to continue the design discussion here But since we're holding off on the what is the source discussion? Uh, I think it was through the mailing list. I suggested that we have a topic or a discussion On my screen is when all funky on me. We have a discussion Um Monday at 9 30 pacific time till 11. I was wondering if we could use that time for Sarah's AI discard to continue this discussion I've checked my calendar. I have a standing meeting at 9 30 Okay, never mind then. Okay in that case since it's still wide open Then I'll let you take the AI Sarah to either find a time or do a doodle poll or something to try to find that time Okay, super So so Sarah, um, are you going to send email to let us know the time or how are you going to do I'll send it to the serverless working group And I've already made the google doc so you can time and it should be open for comment now And then I yeah Well, sorry if you can post the time in this meeting minutes, that would be good, you know Okay, I'll do both. Okay. Thank you. Yeah Okay, cool Um that case, I don't think we have time to really jump into anything deeper So let me just go through the um the list of attendees and make sure everybody is on the roll call um You just see who doesn't uh shriekanth. Are you there shriekanth? What about dan berger Dan Yep, I'm here. Okay, and fabio. I know we already got you um Okay, is there anybody on the call whose name is not in the attendee list. Oh louis. I know you're there. I heard you Yeah, thank you Shriekanth. Are you there? Okay, anybody else missing from the list? All right in that case Oh, yeah, who's this? Oh, hey, okay. Gotcha. Thank you very much Thank you. Okay. And with that, I believe we're done. Thank you guys very much I think we made some good progress today and thank you sarah for taking the ai's to take the next step on this You're welcome. Thank you for facilitating. Yep. A quick question is david miles really there or not? Um Do we mark him is there? Well, he's marked as regrets, but uh, it looks like he actually typed it so Oh, maybe he's just doing it offline. Yeah Which means which is nice, so Okay All right, in that case, cool. We're done guys. Thank you very much. Talk next week Thank you. Bye. Thank you. Bye. Thank you