Session Date/Time: 22 Jul 2026 12:00
[00:00:42] Speaker 0: Wanna wanna
[00:00:49] Dan Petrie: my
[00:00:58] Chairperson: Alright, everyone. It's 02:00. We should get started. Yes,
[00:01:06] Jonathan Lennox: sir. Remember there was when I get when the power went out, it was nice to fortunately, you're in the middle of the window. So it's good power right
[00:01:14] Dan Petrie: there where we go.
[00:01:15] Chairperson: It is nice to have a window right there. Alright. Welcome everyone to Vcon. We have our note well that you should note well. Please review all the information on the screen. I think most of us here are fairly experienced at that. So I won't go through all of that, but I do wanna note that we are being recorded. Make sure that when you want to speak, whether you're online or or here, that you put yourself in the queue. Remote participants, make sure your audio and video are off unless you're speaking. Here's all the information for the meeting. And here's the proposed agenda for the meeting. I think I don't see Hank here, but I wanted that hopefully, he will show up. But there was a request for moving that up. I did talk to Thomas about, like, there's some coordination between those one of his and Hank's. So I guess we can coordinate that. Any other discussion on the agenda?
[00:02:56] Speaker 0: Well, we can make it part of that session, but I'm going to propose a mildly radical, not
[00:03:00] Jonathan Rosenberg: radical charter update related to the draft.
[00:03:04] Chairperson: Okay. We should talk on the mic, actually.
[00:03:06] Jonathan Rosenberg: Okay. I think that right now you can say that.
[00:03:09] Chairperson: So Oh, wow. Oh, yeah. You
[00:03:10] Jonathan Rosenberg: say actually
[00:03:11] Speaker 0: say for the for
[00:03:12] Dan Petrie: the zero
[00:03:12] Jonathan Lennox: people to note. Oh, for the no. For Ecker's recording.
[00:03:14] Jonathan Rosenberg: For recording. Hi, Ecker. No. It's his bot, actually. Hi, Ecker's bot. Okay. What I was gonna say is I we can make it part of the the agent session conversation, but I I'm gonna make a mildly radical proposal for a charter update to basically incorporate this work and argue it should go into vCon. So we can do it there or as a separate item. I don't care.
[00:03:45] Chairperson: Let's assume we'll do it with that.
[00:03:47] Jonathan Rosenberg: Sounds good. Thank you. Oh, and this is Jonathan Rosenberg for the record.
[00:03:51] Chairperson: Yes. Thank you. Okay. Any other agenda bashing? Okay. Then we'll move to the next item, which is Dan. I will try to keep the timing accurate as well just to keep on pace.
[00:04:17] Dan Petrie: I will do my best to squeeze. Had planned on more more time. I'm Dan Petrie. Hey, Dan. How are you, Dan? That's fine. You want
[00:04:34] Chairperson: me to control it?
[00:04:35] Speaker 0: I'll let you Yeah.
[00:04:35] Edward: We'll do
[00:04:36] Chairperson: it. I'm I'm happy to. Either if you want to control it, then
[00:04:39] Dan Petrie: No. I can do that. Okay.
[00:04:40] Chairperson: Then I
[00:04:41] Dan Petrie: need to do something. So I was gonna do a little brief on interim meeting we had in January. I'm gonna go go through the the changes that went from o two to o three draft, open issues, hackathon update, and remaining edits that I believe need to be done to get it to work group last call last call. At the end of our meeting, we we went through a bunch of kind of technical problems that we're still solving. I I don't know if you I I think Jonathan Lennox, probably three years ago, had asked, can we include segments of recording as opposed to, you know, an entire sequence, recording for the duration of a call or or conference or something like that? And, I had thought about it briefly and said, yeah. We can do that. It just fits in with what we got. And I hadn't and, you know, had kinda made a point of, you know, I gotta think through this through deeper just to work out the wrinkles. And the we did that at the interim meeting. Or if I knew a few issues going into the interim meeting in a discussion, we kept like, came up with two or three more issues and had some discussion on the list. And Scott Gotten had come up with a with a suggestion on how to solve that, and I went with that because I I kinda like that that suggestion. And they got incorporated into, into the o three. And I'll I I may actually bring that up just a little bit more, for for discussion. And then the the other the the other kind of issue that we came up that we discussed there was the concept of having multiple parties or multiple dialogues in the transfer type dialogues. And I I hadn't I mean, when I wrote that, I just kind of abstractly, you know, threw in, you know, the the I I'll go I'll go into the details later. I I've got a slide for this, so I I'm gonna go into this now. But I I and I didn't basically, the summary was I'm not aware of anybody who's doing this, wants to do this, and so I'm gonna delete that. But I'll I'll go through the details of that, and you can get one large last chance before I actually delete it out out of the out of the draft. So what got changed? We had lots of typos and and editorial and spelling checks and and and found a few syntax problems in the in the spec around body that that was in there from the very beginning and was was kind of problematic. I fixed the, IANA registration reference for UUID for JW. I I I figured out how to do that for JWS, but it took me a while to figure out how to do the JWE. Party object, one of the things that came up, at the interim meeting and and at the prior IATF meeting in, I think it's Montreal, was the issue of, can you have an attachment that's not contributed by a party? And I felt pretty strongly against that because we kinda we want we wanna know where that came from. Right? Where that you know, who contributed that? Now and so to kinda support that and and actually this came up in in other context as well is so a a party type was at I I I added into this last draft. So now you can have a party type which labels it as a person, a bot, an organization because they are sometimes contributors or, you know, peripheral parties to the to the conversation. And so being able to have a party of these different types, I thought, was useful. And it gives us the the ability to, you know, to do things like, you know, when we put a consent statement as an attachment in the in in a vCon, we can say, well, who who made that claim? You know, what organization put that consent statement in there? Where did this come from? I I I thought that was useful so that, you know, basically, you have prominence of where where where this stuff came from. And along the you know, they kind of drove the need for, you know, an organization, a department label as well for for parties. So I added those those three pretty simple string types or whatever to to party. Analysis object added so there was there were you know, right now, analysis object references the dialogue or dialogues from which that analysis was derived. There was no way to reference, you know, a an attachment if, you know, an attachment was used. And so that was added. So they're they're kind of parallels what we do with dialogues. You know, an analysis can reference, you know, one or more dot you know, zero or more dialogues or in zero or more attachments as to what the what the analysis was derived from. And then the you know, I I brought this up in a in a couple ITFs. Didn't have a lot of strong input on this, but decided to leave the the the analysis object has a type. There are a few, you know, tokens defined in in the in the core. Decided to leave this as open, not register the types or anything like that, and so that you can add all that. Because there's, like, I mean, millions of types of analysis you can perform. Right? And, you know, we're not gonna put an exhaustive set of labels for all those things. The another problem that came up is, you know, when when you have a multichannel recording, you don't always use all the channels. And so there's a party, index or array of indices that correlates with each channel. What do you do if you got a channel that's unused? And so we, you know, nailed it down and say, alright. We'll put no for for the for that channel if there are no parties associated with that with that channel. You know, a lot of these these little details here that, you know, we've gotta work through. Define the new object type recording set. Now I'm gonna talk for the justification for that and the, the recording set parameter, relates to the, the multiple segment of recordings for a, for a call or conference or something like that. Now I'll get I have a slide for that. Explaining what that means and and and the the solution there. There's I mentioned earlier, there's a there was a syntax problem with body. It was just string. It really it should be any JSON type. And when it's string, we have some potential encodings, base 64 or none or JSON. Updated the JSON scheme in the appendix per these changes in o two and o three and added a section for, you know, an outline guidance for Vicon extension authors. And the the other thing was loosen the the mail to parameter on on the party's object. It it originally was pretty strict. It said, you know, mail to URL only. I listened to that so that you basically, you can have an email address. It doesn't have to be a u I I didn't I I that was my original intention. I didn't see a need for that to be that that strict. And, and so the that's the the kind of the the gist of of the changes. So here's this this alright. Stay with the mic here. Here's the here's a a very, very simple example of we've got a recording we got a a call or a conference of some sort. We've got three parties in it, and we're only recording when one of those parties is talking. Right? So we are doing these short little segments of recording. Now this is a more specialized case of, you know, we had a where we have a separate recording for each party. You could have a single you know, one channel recording or you record the whole duration. Or in this case, this is a little more specialized. You're only recording when people talk. Right? Short segments. And but the the you know, this is a this identifies a superset of the of the issues that that were in in the the paragraph. So let's say that you have these you know, you you have these three parties. They only it's super simplified. They each talk for one little talk spurt. Right? And so we end up with this Vcon with three dialogues, you know, one for each of these short little recordings that if they are each a a recording type dialogue. Now here's the problems. So we have this concept of the a party history events where things happen like a DTMF or application button or, you know, somebody joins the call or or leaves the call or goes on hold or or whatever, these these party history events occur, we don't have a a dialogue for the time duration that these events occur. So there's no place to attach it. So that that you know, that's, you know, one problem. The other problem is is this is nothing it really identifies. Is this one call? Is this two different calls? You know? And, or, you know and and, you know, the way the dialogue, the way you label parties, in in the dialogue, you label the recording channel. So we've got a single channel, and we put you know, party zero was the one that was talking, but we don't capture the fact that party one and two also conceptually were listening or or could have captured that. So now it it is specific to this scenario. In a normal scenario, you you you capture all that.
[00:15:14] Jonathan Rosenberg: Can I now a good time? Yeah. Okay. Jonathan Rosenberg. But then why do it this way? Well, I what I what I thought you would have did is each of those segments is still three channels so that the party is consistent in each channel and that just the audio content is is empty or a file type of null or whatever as opposed to,
[00:15:35] Dan Petrie: I like think the reason we're doing this in the first place is because you don't want to have three channels. You're trying to record the minimum data.
[00:15:42] Jonathan Rosenberg: No. I'm saying that the the other two channels are don't contain data.
[00:15:48] Speaker 0: When you say channel, what do you mean?
[00:15:49] Jonathan Rosenberg: Maybe I'm like so I so in the actual auto record recording, is it not possible for one of the channels to be like a maybe maybe this is not possible. I've never tried, like, a novel codec that has no bytes in it.
[00:16:02] Jonathan Lennox: I don't know about it. I see.
[00:16:05] Dan Petrie: Yeah. It depends on the on the media that you're I mean, the format that you're recording in, but, yeah, in some cases,
[00:16:12] Jonathan Rosenberg: you can't.
[00:16:12] Dan Petrie: You end up putting a bunch of zeros in.
[00:16:14] Jonathan Rosenberg: Right. That's what I thought it was not. Okay. Bummer. Because this is horrible. What's that? I mean, if it was if you could it'll probably compress down nicely. I mean, I
[00:16:28] Dan Petrie: there's just
[00:16:30] Jonathan Rosenberg: but otherwise, because that's the whole problem is, like, you're now anyway, keep going.
[00:16:34] Dan Petrie: Well, I mean, you you don't if you if you wanna put three channels, this isn't the problem. Right? If you're recording for if you wanna record three channels with each of them in a separate, this these issues don't come up. These only come up for this specific case when you have the when you're doing these small segment recordings. So it's ugly in that case, but not in the normal case.
[00:16:56] Jonathan Rosenberg: But you're you've also lost an important piece of semantic information, which is that these three people kinda all hear each other. Like, this is all in a profoundly confusing I'm I'm getting to it. Right? This is the I'm identifying the problem Okay. And not the solution. Alright.
[00:17:12] Dan Petrie: And the problem is not pretty, but I think it's workable. So as as a you don't you don't know when the when the call begins and ends because you've trimmed your your your recordings to the segments, which when someone's talking, you you don't know how many calls there are, and you don't know who the participants are, who is, you know, listening or or receiving it. Anyway. So the suggestion was to create this concept of a of a recording set. Right? So you have a a basically, it's just a metadata dialogue that, like, you know, like, we have transfer is kind of just a metadata dialogue. There's no conversation there. It's showing relationships between other dialogues. Right? It's it's showing who's the the you know, which which call was the original call, which was the consultative call, and which was the was the the the target transfer call. Like that, the recording set is just a metadata dialogue, and it shows the the duration. It shows the complete set of parties that are involved in that conversation. And and then the the the the recording dialogues reference the recording set to say, I'm part of this this call. So we've got an illustration. We've captured who was, you know, receiving, and we have a place to put these events because we have, you know, a a dialogue that that its timeline is the entire length of the call. And so this is this is the solution that I I
[00:18:44] Jonathan Rosenberg: was the best solution that I've seen. I know it's not pretty, but it's I think it it it works. Alright. Let me let me maybe going back to my previous comp. What what about this? Is this this sort of, like, gets rid of the like, now it's like a complete like, this is not really a dialogue anymore. It's like it's changed what dialogue means, which is this is capturing the segment of the thing. It's it's not. What if if you go back to the previous slide?
[00:19:08] Dan Petrie: Well, no. I mean, that's not that's not true. Yeah. I mean, it's not any different than a text message. Right? A text message isn't the entire dialogue. A text message is one statement by one person, and that's a single dialogue. I understand. Yeah.
[00:19:22] Jonathan Rosenberg: But this doesn't contain any content.
[00:19:24] Dan Petrie: Yes. Oh, this one doesn't.
[00:19:26] Jonathan Rosenberg: The the recording set is like a pseudo dialogue. That's what I'm saying.
[00:19:29] Dan Petrie: That's that's what I'm saying. It's a metadata. It's Right.
[00:19:31] Jonathan Rosenberg: That's the part that's not really a dialogue. Like, go back to the let me ask why don't we do it this other way. Go back to the previous slide, if you would. So why wouldn't you have a different model where it's three dialogues? In each dialogue, you still have three parties. The recording is one channel, and the party list now allows you to reference doesn't exist, meaning as a like, there's, like, a and, again, I may get this wrong, but, like, the party thing has a map to the channel. Right?
[00:20:02] Dan Petrie: Yeah. That was what I mean. There's no list of parties, one party per channel, and it can be a single party or it can be an array of parties.
[00:20:09] Jonathan Rosenberg: Right. So have an array of parties, and for some of them, there is no corresponding channel. And that indicates that their audio is not present in the recording segment.
[00:20:17] Dan Petrie: You can have an array of parties in a single channel, and that means something different. That's right. It means everything's mixed into one.
[00:20:25] Jonathan Rosenberg: Well, I'm saying that's your problem. Like, you could you could change how your the map is structured so that instead, you have a way in the party itself to represent that this party was present, but their audio is is not there.
[00:20:42] Dan Petrie: That changes a lot of it. I mean, what what the the problem is, you know, with it as it is today, like, with or, I mean, with, you know, either before or after, You know, conceptually, know, doing the transcription and and and generating the the the conversation, you don't need to know that. This is additional data that's important in some cases, but you you can you you know, without making any semantic changes or anything like that, this just works. Right? In terms of generating a conversational transcript of who said what at one time and thing, you don't have to do anything new. We don't have to change any semantics. We don't have to change anything.
[00:21:23] Speaker 0: Yeah. All
[00:21:24] Dan Petrie: we're what we're missing is some relationships. Right? And and that's why
[00:21:30] Jonathan Rosenberg: I'm saying it is a change in semantic. You've actually foundationally changed the notion of a dialogue by now saying it's not it now it is it can be a meta thing. It's just it is not actually dialing at all. Like, it's a new it's a totally different thing. Like,
[00:21:43] Dan Petrie: that's Well, we have that with
[00:21:44] Jonathan Rosenberg: your SIN.
[00:21:45] Dan Petrie: We we have that already with transfer. Right? I mean, transfer is is a is a is a meta concept. It's not a
[00:21:52] Jonathan Rosenberg: Yeah. Alright. I'll make a look at the schema once
[00:21:57] Jonathan Lennox: again. Yeah. Alright. Jonathan Lennox. I was just sort of saying yeah. I think the to other Jonathan's comments, I think, you know, you it's not enough to say there's two other things. You wanna know that all three of these things were part of the same dialogue. Right. Yeah. So And So so I guess the one thing that wasn't clear I mean, I haven't actually read your latest version of this back, and I saw Does dialogue zero point at one, two, and three, or do one, two, and three point at zero or both?
[00:22:26] Dan Petrie: One or in the draft, they do go both directions. Yeah. Scott Gaudin made a comment as, you know, we don't do that with other things. And so we it should
[00:22:35] Jonathan Lennox: just point one. You do wanna
[00:22:37] Thomas Fossati: be able
[00:22:37] Jonathan Lennox: to make it easy to find. You know, I'm looking at dialogue zero, and it's actually one, two, and it contains one, or three
[00:22:43] Speaker 0: of them.
[00:22:43] Jonathan Lennox: So maybe you have to scan the whole document every time anyway. So basically that.
[00:22:46] Dan Petrie: My my think my thoughts I I kinda agreed with Scott. We shouldn't point in both directions. We should point in one. I I think the dialogue, you know, one, two, and three should point at zero.
[00:22:55] Jonathan Lennox: Yeah. And that they're they're that is and it only have saying at one place avoids the problem of what happens if it's inconsistent. Right. So and I think so.
[00:23:02] Hank Birkholz: But, I
[00:23:03] Jonathan Lennox: mean, it just it does mean that
[00:23:04] Dan Petrie: Yeah.
[00:23:05] Jonathan Lennox: I agree. You have to scan all the dialogues to figure out what's in the dialogue you're looking at. Yes. Is it possible for something to be so something can only be recording or a recording set, not both? You can't have a it's yeah. You I mean, you can't I mean, I'm sure you could have more than one recording set if there were actually more than
[00:23:21] Speaker 0: one dialogue.
[00:23:21] Dan Petrie: Yeah. Just it
[00:23:22] Jonathan Lennox: But I mean but, what I'm saying is you can't have something have its own media and also point at another thing that has media in it. Right? It has to be one or the other?
[00:23:32] Dan Petrie: I didn't quite follow
[00:23:33] Jonathan Lennox: you know? So, basically so I don't I don't want it to be possible that this dialogue both has its own media in it and also points also another dialogue points out if they add additional media to it.
[00:23:42] Dan Petrie: Right. Right.
[00:23:42] Hank Birkholz: Yeah.
[00:23:43] Dan Petrie: Yeah. Yeah. No. No. It's not changed.
[00:23:45] Jonathan Lennox: Okay. So do you you're you're either a recording or you're a recording set. Right. And if you're a recording set, you need to look at all the recordings to figure out which recordings are part of this recording set.
[00:23:54] Dan Petrie: Yes.
[00:23:54] Jonathan Rosenberg: Okay. That'd be recording sets.
[00:24:00] Dan Petrie: I don't know why you would how you would have that. But Well,
[00:24:04] Jonathan Rosenberg: I agree it doesn't make sense, but
[00:24:06] Speaker 8: the administrator point
[00:24:07] Dan Petrie: Yeah. The
[00:24:08] Jonathan Lennox: the the ADR says does a kinda recording mute in one more than one recording set.
[00:24:12] Dan Petrie: I I And I I don't know an example where that would make sense.
[00:24:17] Jonathan Lennox: Mean, only thing I could think is, like, if you wanna have I mean, I'm just pondering how would you describe a how would you record a meeting with sidebars where you're recording both the main meeting and the sidebars? And maybe those would be or
[00:24:32] Dan Petrie: But, generally, you're not mixed in both. Right? I mean
[00:24:35] Jonathan Lennox: That's true. You're one or the other, and so I'll play the sidebars.
[00:24:37] Dan Petrie: Right. And I mean, you and you I suppose you could, you know, if in the special case where they were, you could create two dialogues with the same recording in it.
[00:24:44] Jonathan Lennox: Yeah. Yeah. I think I think saying any one any one recording can only be in a single
[00:24:50] Dan Petrie: Right.
[00:24:50] Jonathan Lennox: Recording set. And maybe so the question is, and I think maybe this would help address, Jonathan's issue, if those recordings were not themselves dialogues, but something else. But I don't know how well, I mean, then you would know this is not itself a dialogue. This is just a component of a recording set dialogue. But, I mean, I guess you can tell that just because it has a I'm a member of this recording set flag in it. So don't treat it as over a top level dialogue. But I don't know. I'm just thinking what's gonna be the easiest for tools to parse that isn't gonna be
[00:25:29] Dan Petrie: Right. Too convoluted. And and I think there there is conceptually, there's a need. You know? I I was talking with Rowan earlier before the the meeting here. And I think conceptually, you know, there's a there's a need for a dialogue set more generic where you want to group, you know, messages potentially, you know, text messages and things like that within a conference so that you can show that there are two different threads things like that. Also, it saves some things in terms of, you know, when you have you know, in the Mimi case, you've got, you know, a group that's got a thousand people in it. This kinda reduces the amount of of you know, I don't I don't have to have a thousand indices in every single dialogue. I can create a set and then say, you know, these are the parties to to to that to that to these dialogues. And then and then the, you know, the individual dialogue, whether they're a recording type or a text type dialogue, now you only have the person who's speaking or typed. Right? Yeah. In in in in those dialogues. So I think this is a useful construct perhaps more generally. I haven't explored that a lot. It's just, you know, it's something I need to go discuss more and, you know, I want I will you know, we will explore that in the context of Mimi because I think that's where it might be may be useful. So I I I this is the, you know, the cleanest. I know it's a it's it's a little yucky, but I it's the cleanest that I have seen in terms of proposals for this. And and, like I said, it doesn't break the existing semantics. You can, you know, you don't need to know about a dialogue set. You, you know, you can look at just, you know, room in the basic types and still, you know, have an understanding of all the things that were said and the timeline that they've said and and and that sort of thing. So
[00:27:25] Thomas Fossati: Thomas, how Viconic. So, you know, and I I kinda feel like I'm I'm with with JDR on this one in that it it feels to me like, you know, one of the nice things about the dialogues is they have the same nature, which is semantic, which you kinda understand what they're going to be, this kinda breaks that. And I I wonder if there's a a much a more direct way of solving this problem by using either the analysis or attachments. Because one of the reasons you can you can put an attachment there is is for the context. This is what the this is what I'm trying to emphasize over and above what is contained in the Vcon.
[00:27:59] Dan Petrie: So you're saying now I don't now only have to look at the dialogues. I have to look at all the attachments to see where the relationships of the dialogues to that come back. It seems convoluted
[00:28:08] Thomas Fossati: to me. Well, so when we do a lot of just guess just from our experience. When we do a lot of Vcon analysis, we look at the tags of and those are attachments. And just for economic reasons, we we do a lot of preprocessing, so we have them already there. And so when we're looking and understanding what the Vcon is doing, going to the attachments, going to the tags is is almost always the first move. So it's not exactly that we're always going the other way. And I'm not saying this that that's the answers there, but it sort of feels like when we're trying to make express the metadata around the the dialogue, either for me, it feels like it should be in the analysis if it's going to be subject to some sort of It's
[00:28:47] Dan Petrie: not analysis. This is fact. Yeah. Or fact. This is not analysis.
[00:28:51] Thomas Fossati: Right. Exactly. Or to to the attachments where I'm trying to establish the context, which is not necessarily there in the dialogue. Like, this is where it came from or or, you know, this is the con this is the the consent around it. So I wonder if that's a better place
[00:29:04] Jonathan Lennox: for it. Okay. I'll get you.
[00:29:07] Chairperson: So I just we have eight minutes left technically. So if it needs to
[00:29:13] Dan Petrie: go off some other issues, yeah, like, I get to.
[00:29:16] Jonathan Lennox: I think Edward Edward's next.
[00:29:19] Edward: Yeah. So isn't the issue here really whether the party is, in this particular scenario, we were breaking each of the speakers into separate channels and sort of creating one dialogue. Isn't really the issue here that they're the transmitter or listener versus the talker? And if you classify the parties by by, by what their role was in the session, that that would, achieve the same result. Yeah.
[00:29:51] Jonathan Lennox: Jonathan Yeah. Lennox. I mean, I think, to respond to that even though it's what I set up for. I think the that's partially valid, but you still wanna know that these three things were actually the same call. Right? Even if in zero, you know that one and two were listening, and in one, you know that zero and two were listening and so forth. You wanna know there's the same call, not three separate calls. Right. There could still be a different call, like like, a later call that
[00:30:16] Dan Petrie: No. I mean, there's there's reasons they have multiple calls in a single beacon.
[00:30:19] Jonathan Lennox: The other question I had is you were talking about associating dialogues. Can you say, you know, hey. This was the chat for this video call? Can you you know, the these two things were the same meeting? This this text this text message chain and this audio and video were the same rate.
[00:30:37] Dan Petrie: No. There isn't a way to tie it again, but the a dialogue set would
[00:30:40] Jonathan Lennox: be Yeah. That's what that's what another thing because I was thinking. I mean, I I often like to try to, you know, use the basis of modeling the Meetaco session for the for the IIDF call.
[00:30:49] Dan Petrie: Yeah. I mean, the the, I mean and and I'm not sure how important it is. I because, you know, maybe you had your chat session within, you know, Google Meet or maybe you had it through Slack during your video conference, your meet in Google Meet video conference, I I don't know if is that is that important to capture? I I I mean, there's a way to label the fact that the you know, what the application those things evolved from. So you already have that labeling. So, like, you know?
[00:31:20] Jonathan Rosenberg: Yeah. Jonathan Rosemarck. So my my observation is the thing I proposed doesn't work because parties is is basically in a in a multichannel recording is an array of int. Yeah. And it just makes a fundamental assumption that there's a mapping to the channel by position in the index. Right. If instead you did one of two things. One, instead of it being an array, it's a map, right, where it is for each party, it shows the channel they're in. And therefore, if and and it it contains everyone who is able to observe that dialogue is listed. And if they are mixed in a channel, then they're mapped to that channel. If they never spoke at all and their audio is not present, but they just listen, then it, you know, then you it maps to you know? Then there's no presence in the map or or it maps to, empty. I mean, there's a bunch of ways to syntactically represent this. You could, alternatively, for the most flexibility, have it just an array of object, and each object specify is the party, the the party that was there, their role, speaker, listener, observer Mhmm. And then the channel that their audio is present in, which would be optional. And, therefore, that would cover every single permutation that you might ever have.
[00:32:30] Dan Petrie: It it but it doesn't solve the some of these other problems.
[00:32:32] Jonathan Rosenberg: It solves this problem exactly.
[00:32:33] Dan Petrie: It solves that one problem. What it is and we've got five problems here.
[00:32:37] Jonathan Rosenberg: We're trying solve on slide one? Okay. No. No.
[00:32:39] Dan Petrie: I mean, I I would they're all they're all
[00:32:41] Speaker 0: So my problem solved
[00:32:42] Jonathan Lennox: this slide.
[00:32:43] Dan Petrie: This slide is identifying five different problems, and they're all solved with this one solution.
[00:32:50] Chairperson: I I was gonna ask the question because, like, do we have a clear set of problems we want to solve, and should we scope it more to solve that problem? Because we do seem to wrangle this topic this general topic in a bunch of
[00:33:06] Jonathan Rosenberg: Right.
[00:33:06] Dan Petrie: I mean, I think we agreed three years ago that
[00:33:07] Chairperson: this And I know this is
[00:33:08] Dan Petrie: ought to be that, you know, supporting the concept of of, you know you know, segmented recordings, you know, was was in scope and and was part of it. And and so it's just not until, you know, six months ago that I actually dug into this enough to to to see these problems. Right? So that's I mean, that's that's why we're here. And and this is, you know, the last real technical problem. You know, the rest less of the stuff is just, you know, wrinkles and and syntax, you know, errors or or text text clarification.
[00:33:42] Chairperson: Okay. Just encouraging digging into the problem and solving it.
[00:33:47] Dan Petrie: I I'm I said I I took the input that I had, and and this was, I thought, with the the best idea that that that came out of that. And, you know, I can explore other things. Sounds like I need to have some more discussion.
[00:34:00] Jonathan Lennox: I'll put
[00:34:00] Speaker 0: an email on on is there there's a set of problems clearly written somewhere
[00:34:06] Dan Petrie: They're discussed on the list.
[00:34:08] Chairperson: So I see Jonathan
[00:34:12] Dan Petrie: Identified these in January. Our queue. I can't
[00:34:19] Chairperson: Jonathan, you I assume you're not in the queue anymore. Yeah. Hank, are you?
[00:34:25] Hank Birkholz: Yeah. I'm here. Oh, I'm just in waiting. Right. Sorry to just
[00:34:29] Jonathan Lennox: So Do
[00:34:33] Chairperson: do you have a comment?
[00:34:34] Hank Birkholz: Yeah. Yes. Just as my comment, Hank. Hi. This is Hank. About the relationship of written text and audio and the the same players, so to speak, the same actors doing the talking and the typing independent of the stream. So I can understand that they have a total different tool and that is outside of the scope of the recording somehow. But if inside the same school or true scope, like, call it, Zulip and the ITF video echo, for example, I think it's super important to coordinate that. It is, I think, essential to the dialogue, and Zoom chats have the same thing. Right? So so there are a lot of tools that have this combined. Yeah. And and that and if that is in scope
[00:35:15] Dan Petrie: No. No. The tools
[00:35:16] Charles Eckel: combined, then that's
[00:35:17] Dan Petrie: fine. You can label that, alright, that this Yeah. Yeah. Text So there's no problem about, know, this application or whatever, and and and so you kinda have that. But, you know, then I see is the, you know, the dialogue the the recording set or the dialogue set or whatever, you know, we call it makes that explicit. Right? You know, it's just not by not by inference of, of the application or platform. Quick hackathon report, worked on some extensive thing on little bits that weren't, weren't implemented. Tried it build a framework for extensions into the open source for for VCON extensions and and kinda labeling them appropriately. I had lots of discussion about CDL. I got got a slide for that, in in a bit here. And Hank graciously did a bunch of work with CDL for for vcon, did some, kinda syntax checking and and reviewing and identified a few ambiguities in the, in the syntax and the text and the draft. And so I got, four four little, little edits that, for clarification. Thank you, Hank. And, open issues. The, there was a open issue, and I I I closed it because there was nobody brought up of any issues or any requirements to to use it, but the the the transfer dialogue has a concept of, you know, original consultative and target dialogue. Currently, they or, you know, if there was a question or issue, you know, should those be an array or a single, you know, index value? I I I I brought this up several times. Nobody said that we need an array. I plan to remove that out out of the draft. Same thing for transfer target, which is a party index or array of party index indices. I intend to make that in a single integer only. Last last call before I delete that, I I I didn't even realize it was in the draft. I thought the issue was written up outside. And it's a question of does the does the start parameter make sense for transfer dialogue? I think it probably should be optional. I yeah. If not and do we wanna support abandoned transfer? I that is there's no transfer target defined, you know, before, you know And and, I think it's easy, cheap. Just make it optional. And I had someone also brought I I Rowan brought up the issue. We've got we've got too many objects or tables in in IANA. I don't know. I feel like that's the point of that is to to to keep from having complex. I I I I didn't I don't know if somebody wants to defend that that that concept. I I I I I didn't have an issue. And lastly, CDDL. Queue you up, Hank.
[00:38:32] Hank Birkholz: No. I'm I'm going to the Ayanna
[00:38:33] Dan Petrie: Oh, okay.
[00:38:34] Hank Birkholz: First. So I there's a lot of structures in here when so I built the CDDL according to the the English text. Mhmm. And there's a lot of maps in there, and all of mostly all of them, I think, are supposed to be extents. Yes. And if they are maps, they can have their own subregistry
[00:38:53] Dan Petrie: Right.
[00:38:53] Hank Birkholz: Named by map map name. So I am not averse having I wanna say, this is the 20 subregistries for all the items in there. There will be more. Yeah. And and and having an
[00:39:04] Dan Petrie: extension point
[00:39:05] Hank Birkholz: for other dev specification, and you can define eight instead of seven items for that map. And because of that extension, there is one for the IETF conversations. You added two items without that extension of two items so that certain map all fail. You have to find two different things that I would just have to put in here as an extension CDL, and it would make the other specification. And, otherwise, it wouldn't work. So so, yeah, I well, I'm not against a lot of subregistries in one. I am a registered. Awesome.
[00:39:34] Dan Petrie: That's that's what I have here today. I there's a couple objects I didn't register because I didn't think they were likely to extended, but, you know, they can always be added in the future. CDDL, I had yeah. Just a little history. We in at IETf, you know, two years ago. Exactly. And I had, added CBOR and CDL to to the, the Vcon container. And, the the work group said quite emphatically, no CBOR. And then I asked the question, okay. No CBOR. What about CDL as the schema specification? And the and the group said no. So I took it out. I, over the last couple weeks, have had all sorts of requests for putting CDDL back in. I'm gonna open the mic for that. Hank.
[00:40:30] Speaker 0: Yeah. So
[00:40:33] Hank Birkholz: hi. I'll take this with a grain of salt because I'm the lead author of CDDL. So there's that. Okay? Everything I say is biased, obviously. But I read the text, and it was so again, there's a lot of text. And by and then I tried to read the JSON schema, and I can't read JSON schema. I can read it a little bit little bit better than than than XML or XST, but I can't also not read that. So I created CDDA for it, and I followed the inconsistencies, the ambiguities, I wanna say this. This is not that, like that way you can I'd be one or be well, I don't know.
[00:41:05] Dan Petrie: Thank And
[00:41:06] Hank Birkholz: and the readability. And, also, I think and we will come back to that when when Tom has his presentation. Then we wanna have other specifications that extend this, very defined extension points, how they're named, how the registry works for that, I think, is really useful, and that is where the CDI kicks in. It's just so quick and concise and readable. So that is why I can see why I have questions. Right? And and you you saw that where my question marks were. So I think if it's informative and it doesn't hurt, ASDF also has, as an example, a simple data a semantic data format, ASDF, is having has a JSON schema and also in parallel in the appendix, and that was a huge help. Because sometimes we really, really need the JSON schema, and some people really, really want the for the for the readability. I think that's a compromise. It's fair to me. But, again, grain of salt because I like
[00:42:06] Dan Petrie: So I I'm gonna ask our our chair here. Yeah. Do I add it back in? Do you do you wanna take a poll?
[00:42:19] Chairperson: I I don't know if we take a one. I I do express? I do think there is value if as long as Hank or someone is willing to go on the journey until the end to keep it, you know, updated. I think there was attempts to do JSON schema and then, you know, I don't know.
[00:42:38] Dan Petrie: JSON schema is in Yeah.
[00:42:40] Chairperson: I know. The appendix. But but is it updated and
[00:42:42] Dan Petrie: Oh, yeah. I I didn't I don't know how correct it is. It's not well tested. The text But anyway. The text is normative. That's not gonna change. You know? The, you know, JSON schema will go in as informative in the appendix, you know, if we decide, you know, to put CDDL in. CDL will go in informative in the appendix. The reference, you know, the the gospel is the text. Right? That's that's normative.
[00:43:06] Chairperson: Okay. Jonathan has a comment.
[00:43:08] Jonathan Rosenberg: Yeah. Sorry. I've I'm not I keep we're so small. I keep forgetting to put myself in queue. I apologize.
[00:43:13] Chairperson: As long as you say your name.
[00:43:14] Jonathan Rosenberg: Jonathan Rosenberg. I I don't know much about CDDL, but if it's is it not directly compilable from a JSON scheme? In other words, like, I would imagine for a given JSON schema, one can author a compiler which generates CDDL. In fact, Gemini says you can. So so is that like,
[00:43:36] Charles Eckel: then you don't need
[00:43:37] Jonathan Rosenberg: to specify a separate CDD. If you have two schema that say the same thing, you're just gonna it's a recipe for disaster.
[00:43:43] Hank Birkholz: I hate to say this. I hope no Gemini person is in the room. This is wrong. Proof of it wrong. Because, unfortunately, you have various ways to express the exact same message in JSON schema, and thereby every JSON schema ends up in a conflict decision conflict with naming of types in CDDA. It is not the it is it is not the it is a interesting mix of of how you can come to the same conclusion with different JSON schemas. And CDDA doesn't work that way. It's a it's a grammar. Everything is a type. It's a tree grammar, and and it's deterministic. And so I would say you can always define the data model for a data for a JSON schema from CDL, but not the other way around. So so we LLMs can help a lot doing that and get proposals, and then the human has to make one that's, like, 50 decisions, and then you have the CDDA. And I think that's true, but we are not at a point in the oh, JSON schema is now actually start to be standardized. So when they have been redone with it, there might be a chance that this is actually possible. But at the current state today, no.
[00:44:54] Chairperson: I think in terms of the value to the document, it's is is there energy in the working group to keep it updated, and is the author willing to put it in there and make sure that it's
[00:45:05] Dan Petrie: I I I just I don't wanna be, you know, in the middle of a tug of war. You know, take it out, put it in, take it out, put it in.
[00:45:12] Chairperson: And I don't wanna have a battle about CDL and JSON in this document either.
[00:45:18] Dan Petrie: Yeah. I I'm I I mean, I can I can even generate a I mean, I had it? Right? I mean, it was in there. I I can update that, and and we can compare
[00:45:26] Chairperson: the different Is is anybody
[00:45:27] Hank Birkholz: in the queue. So I can say that I can ensure that the normative text is exactly deflected by CDD. And if there are any questions, I would come to the normative text and ask the question. So this I can promise because that's an easy feedback loop for me. Okay. I cannot promise that the JSON schema can be generated for the CDDA can be JSON from a JSON schema, but I can check if the output of the JSON schema is conforming with CDDA because I can literally run it as a validation tool. So so I can do normative text, JSON schemas, CDDA validation, and then create. From normative text, CDDA that is always conformant. I can do these two paths, but I cannot check if every, CDD JSON schema conflict is there because this is impossible. There's they can because JSON schema is built differently.
[00:46:17] Dan Petrie: I mean I mean, the, you know, the the biggest problem with, you know, both and this is not different to or unique to CDDL. It's, just testing. There's not enough eyeballs testing the JSON schema that that's in the in the draft. Not enough eyeballs are gonna be testing the CDDL. And that's
[00:46:34] Chairperson: But I think it does help to validate the document also. So I think there's value there. Yeah. The is anybody allergic to having both CDDL and JSON schema for now? And, you know, as we progress the document, I know there probably isn't too many more meetings to do that, but we make that determination later. Just just to sort of cut off the conversation. We can have a
[00:47:00] Jonathan Rosenberg: Yeah.
[00:47:01] Chairperson: A conversation on the list if we wanted
[00:47:03] Dan Petrie: to debate. I'll edit it to the next draft with it updated, whatever. And and then, you know, we can have another debate when it goes to, hopefully, work work with less goal.
[00:47:14] Chairperson: I could do a HENS call, but we also are tight on time as well. So I
[00:47:19] Dan Petrie: I Sorry.
[00:47:20] Chairperson: I don't I don't I don't hear anybody objecting. Yeah.
[00:47:27] Dan Petrie: Text text is is normative. And
[00:47:36] Chairperson: we have time to debate that as well if people have feelings.
[00:47:39] Dan Petrie: Developer, you know, help tool.
[00:47:44] Chairperson: Anything else for this document? No. We should move on
[00:47:47] Dan Petrie: to it. Yeah. I just may run through this. I'm not gonna I don't need to go through all these most of these. I got a bunch of edits from Scott Gotten and some things that came out of Hank's review and things like that. Most of them are, like, one, you know, one word or one line edits. I I not gonna go through the details. The I I think three kinda significant things that I'll highlight is I'm I intend to reorganize the the dialogue the section on dialogues along a dialogue type to make that a little easier to to to understand the differences between the different dialogues. I'm going to add an example for transfer. I'm gonna add an example if we decide to do this, the multisegment recording, you know, recording set or dialogue set or whatever. But that issue needs to be solved first, but and and at some point, there'll be some example to of of of for for for that particular case. So that's that's what I had planned. Yeah. I thought that the would would fly better, but but ignoring that one issue, I I had expected to do a quick spin and and asked the group whether it was ready for work group last call.
[00:49:05] Hank Birkholz: And I
[00:49:06] Chairperson: I can can still some things to
[00:49:08] Dan Petrie: Yeah. To work in. I can yield some time out of this this presentation. It's only taking a minute or two.
[00:49:13] Chairperson: Okay.
[00:49:14] Dan Petrie: I'll make up some time.
[00:49:15] Chairperson: Ben Ben is in the queue.
[00:49:18] Speaker 8: Hi. I'm coming here from the mail side. I just saw you guys by coincidence here. There is some efforts also in mail names to build an archive format for email mailboxes. There's ways to express emails in JSON. I see that in one of your examples, have also emails.
[00:49:40] Chairperson: Mhmm.
[00:49:40] Speaker 8: And there's some intricacies about what is an email thread and how to determine what belongs to the same thread and so on, which is very email specific. Mhmm. Just wanted to see whether you have synced up with the email guys, and maybe it would be advantage an advantage to just talk to each other. There's Lisa and Hans Joerg who are particularly involved in the data portability.
[00:50:02] Dan Petrie: Yeah. No. That's that's news to me. I I I'd love input on on on that
[00:50:07] Speaker 8: Maybe you can just hook up with them and just exchange whether there's some overlap or
[00:50:12] Dan Petrie: there you are. There you are. Oh, that Lisa.
[00:50:16] Jonathan Rosenberg: Oh, good.
[00:50:19] Dan Petrie: Yeah. Now we have two things to talk about. So not a lot to so I just you're talk about.
[00:50:27] Chairperson: Oh, yeah. Sorry. I gotta connect that again. Okay. Now you should be good.
[00:50:35] Dan Petrie: There we go. Just did some updates to the to the the contact center extension, fix some formatting text stuff, update relative to changes in the VCON core, updated there's a there was a gap analysis table that's in the in the repo. It's not in the in the draft, but there's a table that that showed all all the stuff, the the the cool functionality that Jonathan identified in his use cases for for contact center draft and where they landed, whether they landed in the core, whether the extension or whatever. So that that table I updated with with updated references. And then as it was identified in in the core, I added this the missing sections that, you know, authors of extensions are supposed to add into the into the draft. And also I added JSON schema to the appendix. And I guess I will add a CDDL definition to the to the appendix as well. So that's that's where that is. I don't think this is ready for work group last call. I think it's it needs another spin or two. And I I I think there's, you know, some some some other other things that that need to be need to be done. This doesn't have any examples or anything like that. So this is still, you know, I think another spin or two away from being being ready for it. I mean, it's not that complicated a draft, but it I think it it needs a little work. I've been focusing on the core. That's it for me.
[00:52:16] Chairperson: Okay. Hopefully. So the next thing on the agenda is to just review hold on one sec. To review the other working group documents, we have overview. Do you wanna just give a quick status of where that is? I feel like maybe just a blanket statement. Do we want to make sure we get through core before we validate all the other documents or you know? That I'd like to just have a general discussion on that point, I guess.
[00:53:00] Thomas Fossati: Yeah. For sure. So as some of you may be aware, when we first adopted the the the the beacon draft, we broke into two halves, the core and the overview. Dan's been headlining the core. I've been doing the overview. And I've been updating the overview every time we have a new core, and there's been they have been pacing. And but there isn't very much changes with it. We've had a few reviews. If you haven't had a chance to review the overview, I'd love you to. Thank you. That would be a big help for us, because it hasn't had a lot of movement. So please give that a read, and that's also true for the privacy primer.
[00:53:36] Chairperson: Okay. I was just gonna ask.
[00:53:37] Thomas Fossati: Yep. Yep. And so, we've had a few more reviews that I've seen the prompt was we had one update last session, but none since. So we've seen some reviews. We feel pretty good good about it. It's been a while.
[00:53:48] Chairperson: And did stop before the session to talk about Mimi messages. I think there's still some things to be worked through, and I know he was talking to Dan about that. So I I I think, actually, it's technically expired, so I'm encouraging him to update that too. But sounds like still a little bit of work to do for sure, so he might step back. But so I think the message here is there's we definitely want review on overview and privacy parameter, so encourage that again. But we probably wanna dot the i's and cross the t's sort of corresponding to when the course settles as well.
[00:54:31] Thomas Fossati: Yep. Absolutely.
[00:54:32] Chairperson: If that makes sense.
[00:54:34] Dan Petrie: The I just comment on the privacy parameter. You know, this work group is not a privacy expert. Right? I think you need to really actively go hunt down some privacy experts out here and get them to come on comment on the list to say, yeah. This is this is great or this is missing this or or whatever because we're you know, this is I don't I don't feel you know, Diane is a lawyer and and I feel like she's got a lot of capabilities. But the rest of us here, I think, you know, we kinda none of us are privacy experts here. And and and this isn't the place that that I feel that we can legitimately, you know, say that that primer is is complete. You know? And and then, you know, I think there's you know, given that, I think what what's also, I I think, a little little off on on the draft is it's got a security section or security consideration section that is is talk where yep. There's no protocol definition here. So it is really you know, it it's talks talks about econ, but I think a better approach would be, let's create a section on econ and go through our our definitions that we that we've defined in the primer and say, you know, let's do a gap analysis. Yeah. You know, Vicon solves this, you know, with this or Vicon could solve this in the future with this or Vicon has no plan to to solve this. I think that would be a better approach to the security discussion of Vcon in in in that draft.
[00:56:09] Thomas Fossati: Thank you. A couple of notes on that. So we actually have have gotten some hand raisers from two different places on privacy. One of them, the peer research group, seem to be pretty interested in that. And another place where your where your wife works seems to have a couple of those privacy guys are really interested in as well. So I expect to see their their stuff on the list soon. So, yeah, you're right. Absolutely right. Yeah.
[00:56:36] Chairperson: Yeah. And I'll let Charles talk, but we did go through this when we decided to adopt it as a document. There is unique privacy properties of VCOMs that we should try to address, and we did agree that we would bring in as many folks to review it as possible.
[00:56:52] Dan Petrie: Mhmm.
[00:56:53] Charles Eckel: Charles, I called just you know, if it's helpful, we could request an early review from Seth on this.
[00:57:00] Thomas Fossati: Oh, thank you. That would really help. I think that would help.
[00:57:02] Charles Eckel: That's that's an option.
[00:57:03] Thomas Fossati: Yeah. What do you think? I think that would help.
[00:57:05] Chairperson: Yeah. Absolutely.
[00:57:06] Thomas Fossati: Yeah. Thanks, Charles. That would really help. K. Yep. Yep.
[00:57:14] Chairperson: Okay. Then we'll any anything else to discuss there? I think that that sort of settles it for me in terms of status of documents. Otherwise, we'll move on to the next one, which I think is agent session. No.
[00:57:32] Thomas Fossati: Yeah. Agent session.
[00:57:33] Chairperson: Where did we wanna do
[00:57:34] Dan Petrie: No.
[00:57:34] Thomas Fossati: I think agent session first, actually. And this and so, basically, I think what we're what we're gonna try to do here is the agent session act is an an extension that encapsulates a verifiable agent conversation to draft by Hank. So what I want to do is talk about the extension first.
[00:57:55] Chairperson: Is it?
[00:57:56] Thomas Fossati: And then when it gets to the inside of the VAC, I'm gonna hand it over to Hank, and Hank can do his Hank magic. That sound good?
[00:58:03] Chairperson: That's not the right one.
[00:58:04] Thomas Fossati: Right? It's the good one.
[00:58:07] Chairperson: It's not provenance. Right?
[00:58:18] Thomas Fossati: No. Although that's good too.
[00:58:22] Chairperson: This one?
[00:58:24] Thomas Fossati: Yes. Oh, okay. Sorry. So this is talking about verifiable agent conversations. And so this is seeking to answer the question what an agent actually did and how it fits inside of econ. And this is a proposal. There's a couple of ways we could have represented it. I'd be very happy to hear what your ideas are around it.
[00:58:50] Chairperson: Wait one second. Need to k. Now you're good. Here we go.
[00:58:56] Thomas Fossati: Okay. So the problem is that the output in an agent does not is not proof of what it did, just proof of what it told you. And there's all kinds of times and places where agents could do things that you'd wanna know about. For instance, you authorize an agent to only read files, but then it broke a production system because it did something different, Or the visible chain of thought really diverges from what, you know, the actual chain of thought was, you know, you know, perhaps portraying some malfeasance and some scheming on the robot side. Or maybe it underperforms, during evaluation, but then it it works very well in another situation. How how did that happen? And so we can see right here the the, a visual of it. You've got the person and the agent having a conversation which is visible to both, but the quest but the thing is, there is a important piece of information that is the detrius of that conversation, which is what tools were called, what was the reasoning that was used that could, touch that. And for all kinds of, security, privacy, and, observability reasons, though these are important things to keep track of. Now and this is a pretty durable requirement, you know, just a simple, you know, look at the major frameworks shows. They all seem to have the exact same same requirements of being able to capture and analyze that exact information for the benefit of the end users. So that that seems to be something which is pretty pretty universal no matter which which continent you live on. And so this is a this is the back be kind of back peanut butter and jelly. By the way, if someone asked what the opposite was, it'd be peanut peanuts and gum would be the opposite of peanut butter and jelly. So this is very good. Yeah. So the Vcon represents a conversation between people and has very rich party, you know, identity and consent opportunities. The the VAC draft that we're gonna hear about from Frank Frank Frank Hank, whoever that guy is, the guy, the German one, is called the verifiable agent conversation, and it allows you to really represent tool calling and reasoning what the agent actually did. So the VAC defines the record, and the VCON extension just carries it. We are the envelope as it were. Alright. So so here are the extensions. First of all, the agent is a beacon party, so we're extending the idea by the a where a party is to include now agents. And so simply the party becomes an agent. Now it points to an ordinary dialogue and there's a meta place now that allows us to to record exactly which model the provider, you know, how it was recorded and any of the environmental reasons that have that that surrounded it so we can identify exactly which agent did this work. And then the dialogue itself is just a dialogue. If it was a dialogue that was text based, it would be text. If it was a dialogue that would be voice based, it would be voice. But the simply the the the the dialogue is what the person experienced as they were interacting with that particular robot. And then there's a new analysis entry, which is which is contains the back itself. And inside that, it contains reasoning, tool calls, tool results, and it's just basically verbatim. So that this this trace then allows us to really do things like AI bias studies to be able to do performance studies after the fact, with all of the details intact. So and by doing that in the Vcon, you get all the great stuff at the Vcon, not only identity and parties, but the the work that we've been doing in life cycle and redaction, the work that we've doing in lawful basis and consent, just come for free. And, of course, you also can sign it and put it on on skit, which I'm actually gonna I have a new term for that in SCITTification. Took time for that. Yep. So boom. I know. I'll I'll I'll I play here every night. I play here every night. Alright. So, anyways, so, we've got we have the, the drafts are out for you to read, and I wanna hand this over to Hank so Hank can go diving a little bit more into what the back actually does.
[01:03:44] Chairperson: I was gonna say.
[01:03:48] Hank Birkholz: So this is hi. Hi, I'm a little bit karaoke ing this. Oh, god. I can't see the slides here or there. Okay. That doesn't matter. So the v in verify agent conversations records actually is the cozy skip part. So omit the v, it's agent conversations. So stop with that. That is makes a lot of sense when you have virtualized conversation. That's I think that's why we found each other here. And then agent conversation is a term that everybody understands. I think that's very important. This is called, in other realms, a trajectory. So we have to say that word at some point in the text, but we do not necessarily have to do that in the title. We saw I think the association between recon and agent conversations actually is nice, and it is intuitive to the reader. Also, agents talk to each other, and they deteriorate in certain languages that might not be human anymore or similar. And and so so that's an interesting fact that we can record, understand, and learn from over time, maybe get better representations for use of tokens in the end. So there's a lot of, I think, application use cases for this. And but then again, they're also very very, very short. An agent conversation between two agents can be, I wanna say, a thousand sessions about the same topic in three seconds, and they're all almost like in inferences, like a like a noise pattern. So they look very differently. But when you zoom in, they look exactly like your problem. And they also have this meta set. This is one agent to agent relationship, but a lot of weird chatter happens. And the reach out of the tools happens. So that is these are interactions like pushing a button, holding up a button. So very similar mechanisms effectively, but but, again, from the point of view of an agent harness or agent that is interacting with its LLM and the user or other agents. So I'm pressing the next button, see what happens.
[01:05:59] Thomas Fossati: You know what? This is my slides. Do you have slide that that
[01:06:03] Hank Birkholz: No. That's fine. This I know this.
[01:06:04] Speaker 0: Okay. This is my CDD. I I it. I would just
[01:06:09] Hank Birkholz: I just move here. So this is basically the call structure from the from the document that is not taking Vicon as its parent right now. This is this is the root right now. And, yeah, you might recognize some of the terms here. So that is is, yeah, mapped easily. We have one example to look into. The details here, what are recorded that are untypical or maybe not so untypical, but, again, semantically related to what you have in a dialogue. Tools are called things happening. Chats open up and close again. Maybe there's a private conversation happening between me and Thomas and it doesn't work. We had a we tried to you group group chat, and and the and the and it didn't work. In Zulu, nothing. And so it's really broken. So so that could have been nice
[01:06:57] Speaker 0: to to be recorded, but
[01:06:59] Hank Birkholz: it didn't work, unfortunately. So the tool calls, this can be chats. This can be MCP interactions. It can be ICIP inputs. There's a lot of things out there. It's all listed there. We are coming at the moment from the coding agent because we are in the ATF, and we love the running code and the rough consensus. But unfortunately, we are also in the ATF and have this nice title slide, and it's GenAI or some really nice person working mostly in all of making a picture. And so all these things can also be part of a conversation and also a part of the gen. So we have video gen. We have video gen. So at the moment, these conversations typically take place between humans and agents and agents that is about code that we generate. But this is also happening when you create the next video. Right? And so this video generation also gets gives you an output. I'm not entirely sure where that output belongs. That is a just a link in Vicon or how that is solved, but maybe that's for future discussions. I think starting with the coding agent scope is pretty good, so we get an understanding how this works. But but there are other agents that might have different conversations. So ending with that, yeah, we are signing this signature part of the VAC. I want to say it once for Ori. He loves VAC. And the verifiable agent conversation record, this is just the agent conversation or the trajectory. We had signed in with Cozy already. This is Skit interoperable. So this is native Skit. But we are also open, of course, for having a signature that is very common to Vcon and then put in SCID. Doesn't matter as long as it's verifiable. Then there's one thing that nobody here has has talked about yet. But maybe, Tom, I think you highlighted it. Why would I believe what the agent told me? It's just an output of a log. And there, the remote attestation kicks in. But I think both skits on top and the remote attestation is a supporting basis. Our optional items that have grow have to grow into this representation, we don't want to I think, any IDs here? Boy, the sea, ocean, whatever. And so and we don't box water, and thereby, we we we just con start with the with the log, right, for the record and the the conversation itself. And we already have the agreement on the on the transparency with the skip, which I think is one part of the verifiability. But then we really have to check the facts. Right? Is the agent actually telling me what it did, or is it telling me something it just trying to obfuscate in the end, and it's not really the truth? So I think that's probably it because, yes, last slide. Perfect.
[01:09:52] Speaker 0: See, I can come up with this. Oh, oh, sorry.
[01:09:56] Hank Birkholz: Any questions to this? Does that make sense? So I think that's a really important question. If this doesn't make sense to you or is in any way really, like, not fitting your view of Vcon, please speak up now or have other other comments, of course.
[01:10:09] Jonathan Lennox: Jonathan, next time. So to your question, think it's yeah. I agree it. I think it generally makes sense. I mean, I think I'm a little that's sort of how sub agents work, and that might be actually related to the stuff we were discussing earlier about dialogue groups because you've got, you know, the dialogue between the human and the agent, and then that agent invokes a sub agent, which is a separate might be a separate dialogue, and they might need to have somebody representing that. But, I mean, I assume you'll handle that because that's an obvious use case. I guess the one complaint I'd make is these days everybody loves talking about AI, but there are humans who are called agents, like travel agents or theatrical like literary agents. So, I mean, maybe we could, you know, say specifically call it an AI agent or something.
[01:10:52] Hank Birkholz: Autonomous system. Yeah. Because I think the term of a if yeah. One AI agent, again, I will go crazy. So I I like autonomous agents.
[01:11:03] Dan Petrie: Mhmm. AI agent or something. Or I don't know.
[01:11:07] Hank Birkholz: Yeah. AI agent. We we can call it that. But then then we have one of the other thousand AI agents stuff.
[01:11:12] Jonathan Lennox: That's true. Yeah. I I don't know. But I Yeah.
[01:11:13] Speaker 0: Maybe it's but if
[01:11:15] Hank Birkholz: the name is our biggest problem, we don't have
[01:11:17] Jonathan Lennox: a problem. I agree. Yeah. I I but but that's something I understand, whereas the rest of it baffles me, I'm gonna talk about
[01:11:22] Speaker 0: that. Okay. Wonderful. Good. Thank you. Anything else? Yeah.
[01:11:31] Lisa Dussault: Hi. Lisa Dussault here. I just posted in the chat some related work. I was not aware of this draft until just now. The the related work is data transfer initiative worked with a a couple AI companies to create a common format for exporting a human's conversation with their AI agent so that humans so that we can we can do data portability. Right? If I Yep. Spend a year on, one AI and then they, like, quadruple the prices on me, I'm like, fuck that. I'm going to this other AI, but I wanna bring my history with me. Yes. It's actually pretty reasonable to get an AI to parse this human readable history by conversation with my old AI and get a get a bootstrapped relationship with me up and going. And there's lots of other reasons why you want to do personal data portability in this space. Yeah. So I'd I'd love to hitch that on here.
[01:12:34] Hank Birkholz: Oh, no problem. It is literally the same problem scope.
[01:12:37] Lisa Dussault: Because the form the the proposal I linked is not an Internet draft. The AI company we worked with didn't wanna spend a lot of time on it. No. But they did something, and if we told them here's a new format, they'd probably do
[01:12:49] Dan Petrie: it. Okay. Yeah.
[01:12:50] Lisa Dussault: No. They're they're they're they're fine. They just, you know, don't obsess about this the way we do.
[01:12:57] Hank Birkholz: Oh, okay. I'm trying not to. But also, yes, I think the more the merrier. And I think the portability aspect for we just were talking about the CUFA CDAT guy about, hey. How to carry your keys along with you when the government is still is taking reroking your keys? No. I can still retain my trust relationship with the neighbor now or with my car dealer even if I do not have a identity document anymore. So so, yeah, taking your stuff with you is really important. It's a personal right, I think, and and and the lock in is also not so great for most people. And I absolutely agree with that goal and thereby, with in principle, agree. And, technically, I think we are already in the same boat.
[01:13:37] Lisa Dussault: You are preaching to the choir. It is what my nonprofit is about.
[01:13:41] Jonathan Rosenberg: Okay.
[01:13:44] Speaker 0: Any other questions? Yeah. Okay. Wait a minute.
[01:13:47] Hank Birkholz: I oh, yeah. Have to see some.
[01:13:51] Jonathan Rosenberg: Alright. Hi. Jonathan Rosenberg. So I'm hugely in favor of bringing these together, but I think you're underestimating how close these are together, actually. And and one thing I'll say as a top level comment is everyone likes to talk about coding agents. Coding agents, coding agents, coding agents. There's a different type of agent that's makes it very clear how close these are, which is voice AI agents for contact centers or chat, and it's for contact centers. This is a huge use case for these AI agents also. And you wanna, you know, you want a record of those things too. And when you think about that use case, the recording of a session that when a user calls up, you know, 1800 whatever and has a conversation with a with an AI agent, that record of what happened is exactly a Vcon. It is also exactly this thing. So they actually look exactly the same thing. And if you and in that way, if you actually start to think about an AI agent and a different and a, let's say, a contact center agent as a participant in a call, a lot of the things you you know, these things come even closer and closer together. So in fact, I would argue that almost everything you have in your draft also applies potentially to a human participant in a conversation. For example, tool call. You'd be like, oh, nah. I'm gonna be talking about tool calls. Like, only AI agents make tool calls. Really? I don't know. Every human contact center agent I ever know in a conference call goes to a web page and actually takes an action and does something and makes it click. And we've had asks to record as part of a conversation the transaction of actions taken by a human contact center agent in terms of a form submission or an action they took so we have a verifiable record. Exactly the same thing.
[01:15:33] Hank Birkholz: Mhmm.
[01:15:33] Jonathan Rosenberg: So so I'm I'm I'm like, I am arguing that these are really one and the same, and we should bring the this together as I mean, supporting of bringing these together. It's it's better than peanut butter and jelly is what I'm saying. It's like, it really should be brought together. In fact, we instead of it being a little bit of a bolt on, which is how you're you're currently the specs currently written, I I think it'd be way more deeply integrated so that it's just an extension that brings all these capabilities to any participant, not just an AI, agent participant. So, I'm in full support. I think we should go with deeper integration. Oh, another thing, reasoning. Comment on this too. You would say, oh, no. No. Reasoning is only something an AI agent would ever contribute to a conversation. Also false because if you again, when we record human context in our conversations, human context in our agents will, for example, make notes and why I did this or whatever as the conversation progresses. It would be great if I had a format that could record such notes and rationale for whether it was produced by an AI agent or human agent. They're just participants. They're participants of a different type. One's human. One's AI. But that's what so my point is I really like to elevate all the things in your draft to first class citizens in a Vcon rather than jam them into a the AI cruft goes over here part, which is no offense. That's kinda how it is right now. Right? So so I think they just go first classes. That's my proposal.
[01:16:55] Hank Birkholz: So we didn't want to be too too disruptive. I I understand. Yeah. Yeah.
[01:16:59] Jonathan Rosenberg: It can be done as an extension, so it doesn't block the course spec, but I think this is this is really interesting and really important.
[01:17:05] Chairperson: I was gonna bring up a similar comment, just more higher level about, like, what is the role of this document? What's the role of Thomas' document? And how does that relate to the scope of vCon? And I I agree the the humanness of an agent, you know, is that relevant or irrelevant is probably a good topic to discuss as well.
[01:17:28] Ben Curtis: Alright. So, Ben Curtis, apology. I just read the draft while sitting over there.
[01:17:32] Jonathan Rosenberg: So what
[01:17:33] Thomas Fossati: I have
[01:17:33] Ben Curtis: a question about, if we're talking about the rationale behind this being part of the reason to later do an analysis to understand why the conversation went the way it went, Is there a a reason to also where you have reasoning entry and the chain of thought pieces to have things like available tools or system prompt to also give the opportunity to understand the full intent of that conversation where it was intended to go.
[01:18:00] Hank Birkholz: Yeah. This this is the the multiple this is a Gaussian distribution. There's no absolute yes and no absolute no here. There's even yeah. As first of all, I think it's more on the yes side. So possible. Also, on processing power, but this is a lot of effort, you can even in c two cut off conversations that are going in the wrong direction. Like, sometimes you have this television time delay of two minutes just to make some things. No. Not public. We don't have that, unfortunately, in the real time agent conversation, so we we have to be really fast in order to cut things off. There are people who think no. I'm not in either camp. Like, that that this is more like an also an intervention method to to for for security reasons or for safety reasons even, then pulls comes to physical shove. But I think in in principle, yes. What you said is is absolutely in scope, I think.
[01:19:02] Chairperson: Just a time check. We have twelve minutes left. So, Thomas, if Okay.
[01:19:09] Charles Eckel: Yada. So, basically, I'm here to just say that I support this. This is very cool. Let's let's do this. It's very much needed, and most of the functional that I would need to have is is there. So so let's let's go ahead if we can. I did have a couple of more detailed technical comments. One is sort of related to the previous discussion about system prompts and all of that. And you can, of course, well, I'm not a VCon expert. Maybe there's different ways of doing this, but you can refer to sort of holistic things like software version, and then that, you know, implies lots of other parameters so you don't have to record the other parameters. The other thing is that there's a detail in draft about sometimes you have API keys and such, and you don't wanna expose them necessarily at least to other parties or not even your logs necessarily. So you have a reduction shoot there. We might want to have some cape capability that's more fine grained where you could sort of stick in some some kind of identifier that, you know, identifies which credential was used, but not the actual credential. And so you could go back and trace that what, you know, what did this entity actually do.
[01:20:18] Hank Birkholz: So we have redaction capabilities today. Two of my coauthors are sitting right right next to you, Johan and Ori. And I'm not entirely sure if that belongs here, but but they have redaction capability ingrained into tokens. We definitely can think about having them generally as a concept in recons. I think that is another building site right now. So maybe indirection is one way to solve it immediately and then having that somewhere else.
[01:20:49] Charles Eckel: Yeah. And I guess details to be discussed offline for the sake of meeting.
[01:20:53] Hank Birkholz: Discussion needs for that. Yes.
[01:20:55] Chairperson: Of course.
[01:20:55] Speaker 0: Thank you. Sure.
[01:20:59] Chairperson: Jonathan.
[01:21:03] Jonathan Rosenberg: Yeah. Jonathan Rosenberg. I forgot to make my somewhat radical proposal at the mic, which I will now make. So we had this audit. It wasn't a buff. Right? It was a side meeting. Yeah. I know. I remember there.
[01:21:14] Hank Birkholz: The cool
[01:21:15] Jonathan Rosenberg: Yeah. I know. Yeah. I know. I'm I'm telling the rest of the room. I know it was you. It was you. I I know you were there. So that was about a similar problem statement. I think it was pretty clear from that session that there was a lot of interest in producing effectively a standards version of of this document. And my my radical proposal is rather than, like, wait for a buff and then charter a new working group, why don't we just recharter this group to after Vicon is done, to take these two things, combine them, and do them the right way, and make that the next deliverable for this working group. So this becomes a AIVcon working group or whatever we wanna do. You don't have to change the name of the working group, just charter for the new working item as a faster way to get this done. That's my product. That's my proposal.
[01:21:54] Hank Birkholz: You you unveiled our secret master plan. We are not waiting. We are working.
[01:21:59] Jonathan Rosenberg: Oh, it's always
[01:22:05] Hank Birkholz: Sure.
[01:22:06] Dan Petrie: Sure.
[01:22:06] Hank Birkholz: That's all.
[01:22:06] Speaker 0: My burger.
[01:22:08] Speaker 12: I'm gonna double down, though. In fact, I've been involved with a couple of cases recently where it's not AI, it's the agent. So having the log of what the agent did and what more than I answered the call, and then I did something bad to the customer. So it's I don't if
[01:22:26] Dan Petrie: we need to
[01:22:27] Speaker 12: say it's AI to sell it. Sure.
[01:22:29] Chairperson: But
[01:22:30] Hank Birkholz: Yeah. It's labeled.
[01:22:31] Speaker 0: It's a marketing. Okay. Again, if that
[01:22:35] Hank Birkholz: is the if that doesn't provide some problem, I think we are good. Any other questions? And thank you for the vast
[01:22:44] Speaker 0: positive feedback. I'm I'm happy here. Yeah. As long as it's CDL. No. This is from right out the door. Okay.
[01:22:53] Hank Birkholz: So this gonna be off to your line in the whole list. Yeah.
[01:22:55] Chairperson: Definitely seems like there's a lot of energy around this. That's great. I do I do wonder about the rationalization of how it relates, like Jonathan's comment about giving it primary status and But I think just become
[01:23:08] Jonathan Rosenberg: if you merge these two drafts, it's one extension. We can figure out what's a sub element, what's a
[01:23:12] Chairperson: title. Right.
[01:23:13] Speaker 0: Yep.
[01:23:13] Chairperson: So maybe that's the action out of this meeting for you guys to coordinate and come back with a
[01:23:19] Speaker 0: That's real work. Yeah. That will be
[01:23:21] Hank Birkholz: real real brainpower. Yeah.
[01:23:22] Chairperson: Does that work?
[01:23:24] Hank Birkholz: It will take a bit of time, but, yes, the extension points where we defined are already done in city there, and then we can work on that.
[01:23:30] Chairperson: Okay. K. You have till November.
[01:23:34] Hank Birkholz: Was the
[01:23:34] Thomas Fossati: agent side being recorded, by the way? The last one?
[01:23:37] Chairperson: Yes. Last one.
[01:23:52] Jonathan Lennox: Yeah. You know what? I think it's
[01:23:55] Speaker 0: That's correct. That's all I'm gonna do.
[01:23:57] Chairperson: Okay. So we have seven minutes.
[01:24:00] Thomas Fossati: Okay. I'm not sure if it's because Hank is taller or because I'm short.
[01:24:04] Dan Petrie: It's one of the two. It's all relative.
[01:24:07] Thomas Fossati: Well, yeah. Right. Exactly. Okay. So I want to talk about Vcon generation provenance. This is a a learned lesson that we have, and I'm just suggesting that, this is a a problem that we've already found that we think could be solved with a provenance object on the things that are generated. So, let me just go over that really quickly. So here's the gap. So more of a VCon is model generated. So, yes, the dialogues may be from the the the raw truth and the parties may be, but but most but a lot of what's happening in Vcons, is, summaries or transcriptions or sentiment analysis or various sorts of tagging, which, which are fattening the the Vcon as it gets older. And so, what's happening now is we're not recording that generation of the content inside the Vcon itself when it is and it's kinda smuggled into the body. So we don't know what's the body and what's the input. And so we're overloading that onto the schema, which is probably not not right. So just to give you a a a real strong idea about this, I have a recording. I'm gonna summarize it. Well, I summarized it, and I put the summary inside an analysis, which was that. And but the current schema allows me to put the put the vendor and the stuff, but not enough of the information to allow me to really understand the provenance of that. So what I'm what I'm trying to to, suggest is we add a provenance object, maybe as an extension or maybe primary that you can attach to generated pieces of the Vcon that will allow you to record that provenance. So let me just give you one one actual, example of that. So we were doing, a a an application that uses tags in the VCOMs, and we were developing that over time. Once you tag a VCOM, it became very useful for us to know exactly under which prompt and which model we use to tag it. That way when we migrated tags, we had some cut sort of data confidence that we're treating all the data with the exact same models and prompts. I mean, we weren't able to to manage that otherwise. We could have managed it in an in an off-site kind of, you know, way, but it really seemed to be much more convenient for us to add it to the thing itself. So so the basic rule is it lives on the object it explains. So it can be it can extend an analysis object, which, summary classification or extractions happen a lot for in that side, or it could be in the dialogue object. So, as an example, we'll be doing this next generation anonymization work where we'll regenerate the dialogue not based upon the the transcript but not on the person. That way we can hide the biometrics of what they were saying. So we can't deepfake their voice. That dialogue object themselves is actually, you know, for for our purposes, something that we can attach an analysis to. Also very, very common when we were doing, doing a lot of health care work now, and a lot of the datasets that we're using are synthetic. Right? So we're doing a synthetic dataset of patient interactions. And so being by putting that provenance with that dialogue, we can have some control over that dataset. And I think, let me just go over the parameters really quick. So it's the model and generated as required in the in the provenance object, but optional, the parameters that you use, the temperature, etcetera, the inputs, the content hash, the actual software itself that ran it, the prompt that we gave to it, the we hash the output so we know that it wasn't tampered with. And then we have this really nice and I won't you I won't use the word again, but it's a nice place for the registry. So basically what it does is if you think about skit and provenance of of the artifacts of of skit, we're just using it. And we're using it to to tag the things that we make inside the Vcon. And so that's why at the very end, we have a registry. I have type skit. You know, we also do a lot of work with J Link. But this allows us to know that this is how we made the the thing that you're now putting on your thing. And I think that's about the idea. So
[01:28:19] Jonathan Lennox: Jonathan Lennox, just to sort of re up something JDR said earlier. They there are things can have have provenance from humans also. I mean, like, we have a human transcriptionists here at the IETF in some of the sessions. So Mhmm. I think and I think provenance saying this was generated by this person working for this company Mhmm. Would be a useful thing also. So don't restrict it just to machines.
[01:28:39] Thomas Fossati: Sure. Yeah.
[01:28:40] Jonathan Lennox: Thank you. Human Providence also
[01:28:41] Thomas Fossati: And and by the way, know, I I've used Skit as the example here. We've also talked about making sure we talk about transparency ledgers, and we do a lot of work with J Link. You know, we're Skit people around here. So to make that a little bit more more programmable if that was your ask, Jonathan. Great.
[01:28:58] Dan Petrie: Dan Petrie. So a lot of this data is already in some of the things that we attached to a Vcon already. You know, you know, if you get you send a a chat completion to a chat GBT or Deepgram, you know, a lot of this stuff is contained in the re the response. They they add that, you know, some people are attaching to VCOMs already. And, you know, it's it it seems like or you were trying to standardize that, which is, I think, a reasonable thing to do. And I'm wondering, you know, instead of this being a whole extension, is this a new media type? Right? That may be attached in the prominence
[01:29:41] Thomas Fossati: Yeah. Field
[01:29:42] Dan Petrie: of of a Vcon. And so I mean, it's I think it's a broader Yeah.
[01:29:47] Thomas Fossati: I hear you. Applicability to to the that data. I see that. Yeah. Yeah. And what I think I can see that for sure. And I will say one of the nice things about this was it was invariant to the thing I generated. Right? So I could generate, you know, a PowerPoint, a movie, all these things that could could have been generated had the exact same provenance thing. So, like, that was kinda nice about it. But you're right. I I I I don't think you're wrong.
[01:30:10] Jonathan Rosenberg: Yeah. Jonathan Rosenberg. Maybe just a small technical comment. I think when I'm looking at the provenance here, the the inputs, it's the is separate from the the dialogue that was used to like, take a summary. If you generate a summary, you're saying there's a prompt, and then there's the transcript, which is the dialogue, and they're different. Yes. Okay. So that's the way we do it. It does it's not like that because the the prompt can actually have the transcript embedded inside the prompt.
[01:30:38] Thomas Fossati: Indeed so.
[01:30:39] Jonathan Rosenberg: We do it with, like, a mustache templating. Yep. So this that would not work with this. So if there's some way we could have a little bit more flexibility, that would be great. K.
[01:30:47] Chairperson: Thank you.
[01:30:47] Thomas Fossati: Fair enough. Yeah. Thank you. Yeah. You know, things that isn't captured is, like, temperature of the model. Just to say a thing things that aren't for for Dan. Things that aren't aren't captured. Temperature is not we can't capture temperature. Example. Temperature. Like, when you're doing, AI generation, you set the temperature of the model that that sets how creative it's going to be.
[01:31:07] Dan Petrie: Okay. It's in response.
[01:31:10] Chairperson: I mean, it doesn't Okay. Ben's in keyword technically at time.
[01:31:16] Speaker 0: Probably.
[01:31:18] Ben Curtis: My comment's gonna be very similar, especially considering my last comment. It's about system prompts versus single prompts when there can be multiple. But from a generalization standpoint, it from a provenance as a definition, the contents of the schema here, model vendor generated at, etcetera, is very specific to today's LLMs, and it may be worth considering some form of enum that can be modified for what comes next, because this is very defined to today.
[01:31:51] Jonathan Lennox: Yeah. Media types of
[01:31:51] Dan Petrie: the Yeah.
[01:31:52] Ben Curtis: Yeah. Media types.
[01:31:54] Thomas Fossati: Yeah. K. Thank you.
[01:31:55] Dan Petrie: Great.
[01:31:56] Thomas Fossati: Okay. There it was. Go check that.
[01:31:58] Dan Petrie: There it was. Okay.
[01:32:01] Chairperson: Well, thanks everyone for very active participation. We're in a small room, but it was a large conversation. So that was great.
[01:32:10] Dan Petrie: Exactly.
[01:32:13] Chairperson: So I assume with these drafts, maybe we'll give it another we can talk about it on the list. But Give it a try? Yeah. I I I assume. Like and then I think the the other one we had a plan, this one, you know, you you got a few comments back.
[01:32:32] Thomas Fossati: So Yeah. We'll keep turning on. I just wanna make sure you said it. Yep.
[01:32:35] Chairperson: Just wanted to validate. Yep. Alright. Thank you, everyone.
[01:32:39] Thomas Fossati: Thank you. Have a great IATF. Enjoy piano. Okay.