Submind YouTube summaries
Thumbnail for DTGWG Credentials Specification Task Force Meeting - 2026/08/18

DTGWG Credentials Specification Task Force Meeting - 2026/08/18

Watch on YouTube

Video summary

The DTGWG Credentials Specification Task Force meeting focused on establishing robust frameworks for credential and trust task specifications, beginning with a structured approach to governance and technical implementation. Participants addressed the complexities of managing agent names across multiple Decentralized Identifiers (DIDs), agreeing that the last entity to claim a name effectively owns it, which necessitates careful stewardship. To streamline collaboration, the group adopted semantic versioning for spec drafts using a major.minor.patch scheme, allowing loose coupling between different specifications rather than forcing artificial alignment on exact version numbers. This decision supports scalability by preventing over-complication, such as ubiquitous Zero-Knowledge Proof (ZKP) implementations, which could bloat credential graphs to impractical sizes, as demonstrated by recent data reaching hundreds of megabytes. Technical discussions centered on linking credentials to trust tasks via cryptographic hashes, with the consensus to proceed with this hash-based approach despite initial privacy concerns regarding selective disclosure. The team deferred complex decisions between ZKPs and other disclosure methods until real-world use cases demand them, prioritizing lightweight and efficient DTG graphs for now. A new editor team was formed for the trust task specification, with Glenn serving as guardian and Martina joining to support the effort. Furthermore, the group resolved to convert existing markdown drafts into the W3C SpecUp-T format within a dedicated repository, utilizing an automated pull request process to manage new repositories and ensure that all documentation points to current spec locations. A significant strategic shift occurred as the meeting concluded with a consensus to prioritize the development of a new "delegation credential" (VDG) over further deliberation on ceremonies, which remain under heavy development without end-to-end instrumentation. The proposed VDG is designed to handle scenarios where an entity acts on behalf of another, such as parents managing children's data or maintainers delegating approval authority while on leave, utilizing ZKPs to verify the status of redelegated authorities without exposing sensitive details. The group distinguished between "delegation," which grants decision-making autonomy, and "authorization," which permits specific actions, noting that current Verifiable Endorsement Credentials often serve as a confusing proxy for roles and requiring precise semantic definitions for a distinct credential type. Action items were assigned to advance these initiatives, including Brendan drafting a summary of the new delegation concept, Jeff creating a new repository with an agenda template, and submitting a pull request to formally add the delegation credential type to the specification. Due to upcoming GDC events, no further calls will be held next week, but discussions will continue through the new repository and community review processes. This structured progression ensures that the task force can iterate on specifications efficiently while maintaining clarity on the distinction between role assignments and actual delegations of authority, ultimately aiming to create a more flexible and privacy-preserving ecosystem for decentralized trust.
Read the full video transcript
Hello. >> Yo. >> Hey. S. >> Hey, Glenn. >> Hey, Jeff. How you doing? >> I'm on fire. >> Yeah, I know what you mean. >> Uh uh yeah, this is actually one of the problems with um agent names. There's >> agent names, while they're exclusive, that's actually a foot gun. Nothing stops you from realizing you can use the same agent name across multiple DIDs and it's whatever last DID got the agent name by the hosting service everything becomes that last DID. It's something I just I don't even know how you can check against it. >> So you have to it's a >> it's I I hadn't realized that that would actually be a side effect >> of it. We have to be careful of that. >> We we learn by doing. >> Yeah. >> I'm just making a copy of the log here. There's a few more entries in V Open VTC itself. So, I'm just pasting that to the chat right now. >> Yeah. >> Let it keep running and see what >> Drummond, you are back in the land of the real world, not down under. I I don't know why the land of down under feels like being, you know, in a different world altogether, but yeah. >> Yeah, >> we're a long way from everything. [laughter] >> I don't know. It it does feel like that. And no wonder New Zealanders and Aussies feel so special. Um they are special. It's it was it was really amazing. Uh that made a very deep impression. Yeah, it's a special part of the world. >> It is. It is. I loved it. Um and uh and the the call I got at the very end of that trip just like my last international trip I'm largely over. So, it's it was good. It was light. [snorts] [clears throat] Yes. And good to see all my good close friends on this project that feels like a runaway train. So, >> you started it. >> Yeah, I know. But now it's like, what do you do about the runaway train? [laughter] >> Don't you don't you pretend you got nothing to do with it. >> Yeah. [laughter] >> All right. So, anyway, first of all, I want to acknowledge uh Jeff's idea that Yeah, we needed to have a a call like this. Um these started to get very real very fast. >> Are we on the tracks, Brennan, or are you just laying the tracks just in front of the train? [laughter] Uh we're we're still on the tracks. Yeah. No, I think you know we are inventing something. But yeah, I think it's >> I think it's going well. But this is an important you know group to get together. Um yeah, because um we do need to pressure test a few things and so yeah, welcome back Drummond. >> Yeah, Drummond's like Aussie Osborne I think. >> What? [laughter] Now I got to understand this one. >> Crazy train, right? You you start a >> crazy train. Or is he paranoid? [laughter] >> Haven't I haven't been an Oussie Osborne fan, so I'm going to have to go learn about that analogy. >> Crazy train and then paranoid. >> So, uh, everybody's here and Sankan's here, too, it looks like. Or he's got something in. Not sure. >> Well, we can't conduct a meeting like this without Yoda. Yeah. So, um I I since this is the first meeting, what do we want to I mean, we have a bunch of questions we wanted to talk through. Are we going to be super formal, take notes? What are we going to which what do you guys suggest? >> Or do we just outlive it and just make decisions? >> I mean, I I think we need some kind of, you know, record of something. Doesn't need to be super. >> Yeah. Um >> there there's an AI thing running. Do we know if we can actually get access to those notes when it's done because they generally do pretty good summaries? >> Um, yeah. Do we do we know the AI thing is running? >> Uh, it said something when I logged in. >> Yeah, it says AI companion is on. Um, yeah, that means it is doing the automatic notes thing. Um, >> okay. >> Here, a simple suggestion is maybe two levels. Um, one thing we could do is because this is an editor's um call and we have a dedicated repo for the uh um you know for the spec we could just any any important I mean I'll just share the practice we had when we had these kind of calls uh working on the spec was um we were resolving issues that the main thing that editors calls were for were to discuss and resolve issues So if we basically say hey look any discussion we have we're going to we're going to note in you know in in the in the issues and and one thing we did is if we did arrive at a conclusion on a particular call relative to a certain issue in real time someone on the call went and and made a a comment and added that comment why did we decide X before we closed or or or you know resolved an issue. Um, so that's what I would suggest is that that's the main thing we're doing and then we can always have the uh uh notes of the call as a um as a backup. How's that sound? >> Okay, sounds good to me. Yeah, I I I don't know. I've never done this before, so that's what I'm asking. >> Yeah. Yeah. So, that's it. It it just it keeps everything structured and means if anyone's got something to put on an agenda to discuss, post an issue, right? Um, and I'm going to be the first one to say I have not been um, you know, I thought I'd have a lot more time uh to, you know, like be studying this back and and posting some issues the the the U credential spec. Um, one of the main topics I have is I already put in our our signal channel is now that we're saying, okay, we need that and the trust spec and these two need to be, you know, coordinated because there going to be a lot of questions between the two. Well, what are we doing to get to a formal working draft? Uh, or are we ready for a formal working draft? I say formal, just get into the working draft process with um a trust aspect. That's one of the questions I have for this call. Um, so and I don't even know, you know, we we haven't set up and gone through the setup of a repo uh for that yet. There's the draft that I think where does that exist? The the one um I think Glenn that you you started, right? or somebody started uh a trust task spec draft. >> Yeah, it's in the trust task um repo which is in where is it? It's in the DTG working group itself. >> Yeah, it's a trust over IP repo. It's trust task task force trust task TF repo. >> I'll link it. >> Oh, okay. So, >> so it's just it's a markdown file that's you know kind of spec looking. I don't know what the model was that you used, Glenn, but it looks specular. >> It follows the W3C format. >> Okay. >> Yeah, exactly. And which is which is fine as far as you know um I think Glenn you started down that before we had created the trust format and and set up the the uh the >> we can rewritten. >> Yeah, if it needs to be rewritten just let me know. Yeah, it so since Jeff did a great job of figuring how to set up a dedicated spec repo that's got Specup T um integrated, um it sounds to me like Jeff the the the task in front of us is to go from the the current markdown document into our uh Trust RP format with a new repo. Um is that >> I mean that's that's what you set up that worked. Yeah, it's it's that's yeah, we we just create another trust task spec repo like we have a cred credential specification uh specific or I forget what the names are but we created a second repo for the credec for the spec to go into uh um whatever that specup t so we can >> specup t it it >> and yeah and then just convert it we just have a convert glenn spec into the into the same format. That's easy to do. >> Yep. And do we need to uh when we need a new repo are can we generate or do we have to go to Rye for that? >> Uh we just create a PR on the TIP governance repo and it sort of gets created. I think Ry just rubber stamps it. So it's pretty quick. >> Perfect. >> It's automatic when you do it. >> Oh, fantastic. All right. Well, that that's a very fast resolution to the uh because I mean does everyone agree that we should be proceeding with these two, you know, um I'm I'm voting that we have the term core in both of them, you know, core credentials, core trust tasks because we're going to be clearly we're going to have other credentials and many more trust tasks. Um but that's that's a a and and then we have the question okay once we start that who wants to be on the editor team for that um you know each each spec should have an editor team that is is taking you know uh that has editor responsibility for it we went through that process uh formally for the um uh credential spec I think we need to do it for the trust test spec um I'm I'm putting it by hand to you know be a guardian of both um mostly to help you brilliant people you know stay on the train tracks [laughter] >> uh for trust house I'm happy to be an editor given >> that's that's fantastic we what we'll do is we'll um yeah we'll take >> Martina is shaking her head she's like what are you doing >> just really Glenn >> I mean I'm happy to hear [laughter] trust song. >> No, no, no, no, no, no, no. She's She's putting you on, Glenn. It's like >> you don't you don't have any choice. You don't have any choice in that one. [laughter] >> True, true. >> Yeah. Well, folks don't have to, you know, make a hard decision one way or the other today. What we what I suggest we do is surface tomorrow and say hey editor's team if formerly where the editor's team you know identified and and in the repo and everything for um credentials the report tomorrow on trust task uh um um well our report is going to be to say we we think we need to you know launch working draft one of trust task the following people volunteer to be editors who else wants to volunteer to be an editor if anyone else does And that becomes the uh editor team that we set up for that. Uh and welcome David. Um this Yeah, I just [clears throat] I I just saw that David joined. >> Thanks. Thanks. >> Super. Um so uh so that's that's cool. Now, in in terms of like notes, action items, um this is something I can we can make sure is is not essentially on the agenda for the call tomorrow that we're going to take that action um and get that started. Uh and that already answers my key question about now having um the two working drafts that we can work against and away we go on that one. Um >> I um if we're talking about actions, one thing I would like to raise here would be potential of a new DTG credential credential type that's surfaced uh from building open VTC. So there's a there's a gap that's arisen. >> Cool. I mean I'm going I hope this is good news. >> No, it's I think it is good news, but it's um it's just again it's the pressure testing of the the spec. >> Yes. >> And um you know, there's a few ways it could be solved, but I think a new type would be the best way to solve it. You happy to talk about it when the time's ready. >> Okay, that's I was going to say what because again I'm coming back in uh fresh. So let's just a suggestion in terms of um since we haven't preset up um you know an agenda page for this call. So, that's we've already hit my one agenda item. So, that's uh um uh one thing to talk about. Who else has an issue that they'd like to help resolve or something they want to make sure is on the agenda here today? >> Just briefly, can you hear me? >> Yes, we can hear you, Martina. >> Perfect. Thank you. >> I don't have anything to put on agenda today so far. >> Okay. >> Yeah. >> I wasn't sure about the voice. We uh just also a process thing which is we have been moving ahead with Glenn on some stuff that allows something like our witness exchange to work. You know, it's sort of the first multi-art trust task if you will. Um and so there was coordination there which I think this group should be better aware of and have a chance to weigh in on. Um and then also just kind of a process thing of how do we surface things to the larger groups? you know, do we need feedback? Um, you know, that's kind of a question from you for your drummond. What's expected um on that stuff? >> Uh, okay. So, process. Okay. So, I got three agenda items here. We got the the process question. We got the um um I I I want to say that it's a ceremony um you know, question. And then we got Glenn's new credential. Um, are there any other agenda items that folks want to surface today? >> Brendan, is there anything from the back and forth on trust tasks and DTG feedback? Things like the um, you know, hash type that's in the witness credential. Uh, the linkage of using the hash. I think we're all in agreement, but is it worth just going through with this group so everyone's, you know, just in sync and that people are aware of the decisions that we're making and locking in? >> Yes. >> Uh yeah. Okay. >> Yeah, I would say so. Also, um and this is something where uh I have some knowledge, but I think we would maybe even cross over with the ZKP group. Um, you know, there's some things that have come up about like if we're doing a digest, then you have less of an ability to do selective disclosure. Um, you know, like if a digest is required. Uh, so then we're sort of saying that we're moving we're relying more on ZKP for privacy, which of course I know we've been talking much about and is the plan, but um, you know, just wanted to flag some of these things that um, you know, may be worth again discussing together. So, you know, the point about the digest, of course, is just to make sure, you know, when when you're linking something, you're linking to the to the, you know, actual credential and it can't be spoofed in some way or another or the actual trust task and it can't be spoofed in some way. >> Yeah, I'm noting that. And uh I've got some some some good uh um there's another customer IP um effort that might tie into that. Um, I can barely see that your hand is up, Martina, because your hand in the sky is sort of, you know, looking like a flare out of the sunset. So, go ahead. >> Well, that's San Francisco, you know. [laughter] >> Um, no, I'm um there was some distraction here, so I'm not sure whether Brandon already mentioned it. I um put into the chat the question again whether we should start working with forks or whether we are still working with feature branches. Um yeah well yeah that would be maybe something to discuss as well here >> that's okay for feature branches okay >> why why does is there a background as to why that matters just out of curiosity or is it just a style thing >> did you hear that Martina >> yeah I heard it I'm not the super expert with GitHub to be honest But from what I heard um it matters uh for merging. >> Um it's easier for roll backs and all those things. But maybe I don't know Brandon you know or anyone else >> know any anything more about it. >> The general rule is if you are a >> you have access to the repo >> branch if you don't the then you fork and the two work side by side like it's the PR that you reviewing. Well, I heard it a little bit differently that if you're just starting and a small group of like I don't know two to five people then you work directly. you may not even work with feature branches. Um and the more complex and the bigger um the participation becomes um the more you divert towards uh forks >> and then from what I heard it it seems that with rollback and versioning it seems to be easier with forks but I can't tell you why that should be and whether this information is correct. >> It's it's just a permission issue. There's no difference in rolling back a PR or a commit. >> Yeah. The the one thing I would add is um it's something easy to forget is uh when you create a PR, there is a setting to allow maintainers to contribute to the PR, which we have not done when we've been working with Glenn once or twice. And then he can't, you know, he can't add a commit onto the PR to massage the details. So that creates a collaboration barrier. And if we're on the same repo, that's less likely to happen, you know, if it's all forks. But, uh, you can do it from your own fork or something, too. We just have to make sure to check that box. Um, does that make sense? >> Yeah. I didn't even know about that. You're already at GitHub ninja skills that are beyond my uh uh experience. So, >> yeah, Alberto surfaced that one. I I I didn't use it so much in the past. I'm like, "Oh, yeah, that solves our problem." >> Okay. >> Brendan puts a PR from a fork, the main branch moves. So, now he's out of date and on a fast moving repo. For [snorts] Brendan's PR to get merged, it has to be in sync. So, either he has to time it perfectly or normally the maintainer will just push a merge for a force merge back to main and then accept the PR. But if you don't have that feature turned on, you get stuck and you're always behind the latest branch is typically what happens. Okay. So, what I'm hearing is it won't really matter fork or um feature branch if you turn on that flag. Is that right? >> Again, I would say for for big projects, maintainers typically branch anyone else Fox. It's just a permission. It's a permission structure. >> Wow. >> I'm learning a lot. >> One other one that's a little related to that I I think Sankrashan and I also had a question about is this versioning question. Um so I knew I know we're working towards quote working draft you know or uh what's the word implementers draft or something number one. Uh, but along the way, for example, for Glenn and Alberto and I to coordinate and have code that actually runs together, we also need ver some kind of subversion of that. And so I just want to make sure that we're in agreement how that's going to work. So it's like, you know, are we going to match version numbers somehow or will we say credential version.4 works with trust task credential version.9. you know, we have to have a way to to kind of coordinate that. >> So, [clears throat] again, now I'm reflecting from W3C experience. Um, the although they handle it one way and and and we're we have more flexibility how we do it. Um, but the idea of the working graph stages is you you know you version whenever you need to. Um, and and and you're there are two drivers of that. One is you want to flag, okay, there's a new version to review, look at the new stuff, right? Um when when things are moving rapidly, you know, you can't just ask for people's continuous attention to review stuff. So, you call out a new version as soon as you say, "Okay, we've reached a state where we want people to to look at it." Um, and it doesn't matter. I mean, well, at Oasis, we went to one 59 working drafts, right? because we were working in Word and the only time you ever knew anything was new is when we publish a new something new. We don't have to do that. We're using GitHub. But there should be very little friction in saying okay this is not working draft 03 or 04 or whatever. This what you're bringing up Brendan is a more important thing which is okay code sync to that stuff. My answer there is okay if you have that need then whenever you reach a point where you go okay we need to lock on a version we're working on that call that a new working draft just say okay that's working draft05 right I don't think you have to keep the two in sync you could do that we could just say hey we want to do that in order to so that it just reduces mental load but that's I'm going to say that's up to you as implementers whether um This is I mean Glenn now we're living the reality of code first, right? >> Yeah. >> Um so the the best practice of code first. This is the literally the first working group in my um career where we've taken that approach. So you're plowing the path. You tell me what will work best. >> So typically brittle architecture is when you start tying disparate components tightly together. Um, it creates really bad brittleleness. I'm just thinking from a code level, you know, DTG 1.0 what the what it's pointing to for a trust task should not matter from version because you'll just know that it supports trust tasks. And when you follow that linkage and you find the trust task that you might be looking for, then the trust task version number comes in. And then it's just going to be are you you know do can you read that version if not you'll throw an error that you need to be updated to whatever the latest trust task is. Um so I don't think there needs to be a linkage apart from maybe a in the specification just saying trust tasks need a minimum of DTG 1.0 and DTG uh tend to link towards uh trust tasks 1.0. As long as those two 1.0's O's recognize each other. However, they diverge in the future should be okay. Um because at the end of the day, we're they they aren't tightly linked and that's a good thing. Does that make sense, Brendon? >> Yeah, maybe that minimum version. Um you know, hopefully we won't have things that are like truly breaking um you know, it's like additional uh compatibility or additional features. Um but yeah, if we could say minimum version like you know these this DTG spec works with minimum of trust task version blah you know and vice versa. >> Um what do you think about something like that Drummond? >> Yes. >> Yes. Again I'm I'm going to defer. I'm also realizing that uh um now I you know I just had a good catch up with uh Erica and Shannon yesterday. you you all saw I finally listened to the recording u of the meeting last week. Uh we need to bring them in sync with this as well because now their code base is as dependent on this as everyone else's. Um and uh and and so I want to make sure that they're they're you know comfortable with all that too. Um I yeah I'm I think that's great. I think as long as we have uh agreement on it among the folks that are uh coding um I'm going to repeat again this first time I've done code first and I love it. I'm going to advocate it the rest of my short career doing this because this is the last specs I plan to spend uh you know full time on. So >> yeah, >> let's go for it. >> Yeah. So I think Sankashan you're right and I think that's why we're saying the loosest coupling would be almost like an MS MSRV style thing which is the minimum spec that we expect this to work with is you know 1.0 to 0.9 or something like that. Um yeah I I don't think it's a red flag. I think we just go with something as a starting point and just see what breaks. And so so um on that uh I just wanted like there's different styles. There's the kind of code first style which is you just do like 0.4 0.5 you know and you increment like that but Drummond there's this working draft 01 working draft O2 which is more the spec style. We could put tags on the repo you know with those working draft versions. So, I'm just I want to make sure I know when we say a version, you know, what are we what are we referring to, you know, and I'm not sure I understand the spec notion of versioning um as well as I need to. Okay, so just just clarify the spec notion of versioning in the working draft stage is you know just two integers incremental as the editors say okay we're going to just um um cut a new working draft and and you can do any amount of work that the editors decide to do. That's what the editor team is about until you say all right we're going to move from working draft 04 to working draft05. So, it's just an editor team call and you just at that point, you know, you you you you just change the uh the version number. You're you're constantly working against the one thing, but you just that's when you increment the version number. That's just an pure editorial decision, right? The GitHub decision of how to tag it is also up to the editors and can follow whatever you guys recommend. Um, again, I'm not I'm not doing the coding. So how to tag that is up to you. Um what do you suggest? >> Um well just if I can jump in just for a second before Jeff I I do think you know the kind of typical code approach of major minor patch versions is helpful and then maybe we can link a working draft version to that like a major version is a is a increment of the working draft version. You see what I mean? So like we might we might be iterating on 1.1 1.2 1.3 but we don't go to working draft 2 until we go to you know kind of uh git um tag two. Uh that that way we can keep the working draft version uh aligned but allow for more rapid iteration and more specificity you know with major minor patch versions. Just a thought. >> Yeah, that's whatever you as implementers decide is going to work best. I think the one thing we want to do is just document how we're doing it so that anyone new coming in can go, "All right, I understand how the spec drafts and the code uh repositories are being aligned. Whatever you suggest." Uh Jeff, go ahead. Yeah. What I was just going to mention is because I know you mentioned in an issue a while ago uh Drummond where you said you had it said work uh working draft and 01 and then you would bump it to 02. It's not 0.1. It's literally the number 01. Right. So that is that correct? So it's it's it's as if the draft document has a just a sequential number 01 02 03 and the code which we're more used to with sever um you know it's it's a question how do we align those two things because let's say we take the trust test spec and put it into specupt and create a formal working draft for that too. So it's we bas it would probably be a coordination saying well uh credec is at 02 right now trustec is at 01 we're going to agree that we're going to increment both of them so 03 of credspec aligns to 02 of trust spec and then whatever we do in the git repos maybe we just create a tag for that 0203 or something like that so that it obviously cross references the the drafts um of the of the working docs better if that makes sense. Yeah, that's that is fine. By the way, I'm realizing, you know, again, this is first time I've done code first. The 01 02 03 just incrementing um um um um you know, uh two twodigit integers is just a a practice we've used elsewhere with uh um you know, with with trust specs and um is is what the W3C has done. if it would be easier because it's just text in the spec to adopt the the same you know sever uh versioning of the working drafts to align with the codes uh uh code bases being developed we can do that too it's it is just text >> I mean I I would if we can use sever I would suggest it because especially having that patch level just means if there's a spelling mistake or you want to change something that's not really breaking or just add clarity. It's not a change to the spec actually. It's just clarification and that's where that extra level of depth really helps and matches with how you what we do with the code bases as well. >> Okay. So, do we want I mean because again it is we could literally do a you know PR in one minute just say okay we're going to adopt Sever um for the versioning of the spec drafts and align it that way. So, everyone, should we do that? Looks like I see a bunch of nodding heads. Uh, all right then. Let's do that. And now that's going to simplify how we can stay synced. We're all going to learn from code first here. And and then I have a nice [clears throat] anytime we run into problems with that, we have one a two-word answer. Blame Glenn. [laughter] >> Oh. Uh but so um so then just as a starting point um are we just continuing with uh like I don't think we've been uh you know kind of managing our versionings on the DTG side um so do we do we want to have a match point now where we align with something that's on the trust task spec or we just um start where we start and we'll just we don't expect the numbers to be matching right it can the DTG spec 3 and touch task spec 2. So we I guess I'm just ask just confirming we don't need them to match. So we'll just start adding those to our DTG uh you know pull requests. >> Yeah, I would actually say it's a good good practice to start with them not matching. So actually people just understand they do not have to match at all. Whereas if we artificially match them, I think it'd be super confusing to everyone. >> Yep. and Sangshan concurs. I think we all concur on that. Um it's striking me that the uh >> um Martina I think one place we wanna in the general repo I think we want to start a discussion on spec versioning to capture the process we're we're going to be using for you know because this can apply to other specs too, right? We're going to have uh VDS and we want all of our specs to work the same way. So, um I'm not I'm I'm pointing Martina because she helped create that general repo where we can put this stuff that's not um um task force specific. Um >> I just wanted to to ask in this context because Sashan also pointed in this direction. I'm not sure whether consciously or whether he meant something different. Would we have something like a mapping whatever table information somewhere to you know link the code to the spec. I think that should be in some place, right? Because there is a connection even if the numbers don't >> Yeah. Yeah. >> add up. So where would >> how we do that? >> Link to the tag. >> Sorry. You link to the tag, Martina. We would tag the specs. >> There could be many many many many commits and PRs, but when we ratify a, you know, 0.1.4, 4, you would tag it as 0.1.4 so that people then know how to find it in the repo. >> And and of course it appears in the text of the spec too, right? It'll be that the DTG spec, you know, 1.4, you know, requires minimum of trust test spec, you know, 0.8 or whatever it is. Um, >> and and yeah, I mean you your your general repo has been super helpful as an entry point for people. Um, so whether we want to like sync that and keep that up to date too with like a reference um, we could, but you know that's extra work to keep keep uh in sync. >> I think the general repo the the assumption is we just that's a starting point and things like this that folks need to understand the specs and the codebase. That's why I'm suggesting we have something there that documents what we just discussed so anyone can understand the numbering system. >> Yeah, >> if it helps. This is what VTI looks like. These are the tags. So at any point in time, someone can easily just get a zip of what it was at that point in time independent of the number of commits that actually took to get to those tags. That's what I would suggest. So this is a re this is the easiest way to follow it verse, you know, if you're looking at it naturally, you're looking at something like this, 1477 commits and trying to figure out which one of these was the right version that got released. So >> So go back to the Cypress one. >> That's commits and then this is the tags. So you can see here Cypress is a that's the named release, but these are the versions of the software. >> Yeah, those are the vers all the versions go into that. Yeah. Okay. >> So, if that helps, just give you a reference. This is what you would be working off the tags, not the commits. >> Cool. >> And uh one one thing uh that Glenn flagged um just a housekeeping thing which is on my plate. I'm I'm sorry I haven't gotten to it yet, is when we when we make the spec repo, um it can be confusing to people. Like the the task force repo for the cred still has an old version of the the spec there. And I think we should probably remove it from the readme and point to the spec repo now. Um, you know, and so that's a that's a simple PR that I can make, you know, so that we're not otherwise people are going to get confused very quickly. >> Please, please do that. Okay. Will you take that action, Brendan? >> I will. Yes. >> Fantastic. Yeah. Um, perfect. And once we set up the um uh the repo for the trust aspect, then let's make sure that it's clear that's the current one there, too. All right. Um I don't know if we've covered Jeez, that's amazing. We we got 22 minutes left. Um, we still have new credential ceremony and the ZKP question. But since we're on process, were there any other process questions um that we want to cover quickly? Although someone asked, I forget who, how do we surface things with the rest of the working group? And I think the answer to that is we have these calls. We're advancing the spec. Everyone knows that any any major you know action there is going to be you know reference the repo look at the issues um you know raise PRs or raise issues um discussions if if necessary. But I think this um otherwise you just we report out um and um um who wants to and in fact I'll make it easy. Who wants to be point on reporting out tomorrow on progress on this one? Let's just pick somebody who wants to do that on on credentials. >> Uh I can I can do it, but I would like to, you know, talk through with the group a little bit more just to make sure that there's at least an understanding of what I would say. Um and you know that some clarity on where we where we think where I think we're at, you know. Um, so I think yeah, let's take some time to make sure that, you know, uh, things can always be changed, but that, you know, what we've been working on makes sense to the group. Got it. Yeah. And we can reserve a couple minutes at the end to make sure we're synced up on that. Um, okay. So, of the other three things are the the new credential ceremonies and ZKP, which is the most important to get to next? You want to you want to do this new credential um proposal? Uh you're on you're on mute clan. >> Let's do a ZKP first because I feel like that's maybe a quicker discussion than the new credential type. >> Okay. Uh Brendan, you you were raising um the ZKP coordination question. >> Yeah. So, so basically um the mechanism that we have now is there's more detail to it but when you want to link between a credential and a uh trust task ceremony you know or flow that um >> uh generated it you know so that you can you can verify that uh you need to have some way to link it you know cryptographically and so the hash of the trust task is how you would do that. Um, and so you know, we we've proposed a a standard hashing algorithm. So we can talk about that if you want, but it it should be pretty standardized. But the point is once you're doing a hash over the whole credential and you're requiring it, then selective disclosure is kind of blocked. you know, if you if you felt that selective disclosure was important, but I'm not sure that it is because our our um credentials are very kind of atomic and small. I don't know that there's, you know, will you really need to selectively disclose things and plus it's also like a commitment to the ZKP approach. You know, do we want to sort of say that that is how in this world that we're managing privacy is not really with selective disclosure, it's with ZKP. So, you know, there's also that kind of policy direction, if you will. Um, so do you think that describes it? Well, Glenn, >> anything to it? >> I would just say at the end of day from a DTG witness credential, it's just saying you have to provide some form of data that matches this hash. Whatever that is, whether it's a trust task or it's an intermediary ZKP that's been inserted as a proxy, actually doesn't matter. it's just up to the verifier to say, you know, are you providing something that's going to match that hash as you go through it. So, part of me is just kind of saying it shouldn't matter what the input was. Um, selective disclosure, you know, if people want to add that to trust tasks, but then date still going to be a hash of the selective disclosure in the trust task. It's still the task as a whole that gets um there. So I feel like that pushes the responsibility actually back down in the trust task layer than enforcing something more complicated into DTG where DTG now has to deal with every single possible use case of what it could be witnessing. At the end of day it should just be saying I don't know. I'm not telling you what I witnessed. All I'm saying is here's a hash of what I witnessed. It's up to somebody else to provide that if they're willing to be verified that it was witnessed. And I think that's the best logic that works. Does that did that make sense what I said? Just which then becomes its universal input. It's like garbage in garbage out. I can I could literally create fake witness credentials if I wanted to obiscate what's actually happening by just throwing some junk data in. And it's just going to be random hashes to anyone who's looking at it. Yeah. [clears throat] I I suspect though that um Brendan, what you're bringing up is that hash going into the Does it does the hash end up in the credential or is it just used in the trust task um um workflow? >> It's the hash of the trust task that is represented in the witness credential. >> The hash of the Okay. Okay. So we take the trust task and we just hash it and then that's the that's the u what was witnessed is that hash. >> Got it. >> So we we've seen two you know we we've already talked about the task context. Um >> yes yes >> you know so that that's an identifier which points to something that has an ID but you know you could just copy that and paste that anywhere right so that's why we need the hash to have something that can be cryptographically tracked >> tied to it. So it's kind of both points. You need the the ID and you need the hash. >> Got it. >> So that's what that's the new part, you know, but we're we're trying to follow that core model that we've already discussed of the task context of of a uh you know. >> Exactly. No, but correct me if I'm wrong. Both of them could be correlators, right? >> If that's what we're worried about is correlation of that. Um um I mean if if we're worried about having correlators that can be tracked if in the usage of that credential is that is that the privacy issue? >> Uh that that's worth considering. I think less so is my intuition. It's more like you know selective disclosure um of uh I guess in this case uh trust task uh data data from a trust task >> data from a trust task okay >> because then you you couldn't really um you couldn't really do that uh you know you would still have the hash of the whole credential um and it would be hard to to verify that selective disclosure I Does that >> I guess the the challenge would be let's say I do a trust task with Brendan to uh I don't know change my legal name for example and that gets witnessed as a hash and now Martina wants to verify that she can't verify it unless I give her the original trust task which is going to have what my old name was for example so that's a leakage now to the verifier. But at the point there it's like what's the verifier going to verify otherwise? Um >> yeah. Wouldn't the verifier just simply ver be verifying the um the resulting credential? Is it signed? you know. >> Yeah. I mean, it feels this feels like one of those edge cases that comes up where again you hear it a lot in the industry, but in practice it doesn't seem to I would rather just say let's go with a hash until we find a real world use case that requires a different approach and then let's solve it at that point. >> Yeah. Yeah, I agree. Um, by the way, Sakshant did his usual amazing I don't know how he finds these things. Um, as soon as we talk about crosscredential linkage, I just want to point out Trust OP has um coming out of the carry work standardized a uh the self-addressing identifier or said for how to do that. So, um I just want to make sure we're not reinventing a wheel that we've already now um uh you know, it's actually there's an IETF working draft that he um that Sashan found um for SDS. Um we've got that registered now with uh um uh Ayanna as a as a um >> Yeah. No, doesn't said is actually the it's doing the wrong thing here. >> Okay. >> Okay. So, it's not needed here. I just I just wanted to >> Good. Um, >> as long as anyone's aware that if we need to do cross credential linkage, let's not reinvent that wheel. >> Yeah. Um, again, I would just start with it simple until we find a reason why something more complicated needs to come in. >> Yes, please. >> I don't know, Brendan, if you >> No, no, I like it. I again, um, I just want to also flag for the group. Um, I don't know if we're going to take a position, you know, or need to on ZKP versus selective disclosure. We don't have to do that now, but um, you know, that might come up to say, you know, our p preferred privacy approach is ZKP for such and such reasons, you know. So, you can punt [clears throat] on that. The reason why I'm punting on this is a good word is the danger is we end up putting ZKP at every single level and then it becomes an implement's nightmare when someone new comes along and goes at what level should I be implementing ZKP at. Um if there's too much choice everyone will have a different interpretation. Whereas if you don't have it anywhere, it becomes a conscious decision and a discussion about what is it that we're trying to do and where is the right layer for ZKP to be inserted and try to keep it at one layer as much as you can. And you know this is the problem. There's just too much variability of what you could do for some to be blunt academic reason, but in practice it never actually happens and everyone wears the cost of over complicated specs as a result. Yes, it's we [snorts] have to make the hard choices as an editor team to not make those complications and it it's going to I guarantee it's going to cause us a lot of pain but we got to do that. >> Yeah. I would also just say when we did the demo for DT DTG at scale uh for something like Linux Foundation which we modeled about 18,000 nodes with interconnectivity that was already 600 to 800 megabytes of credential data. If we overload it with like ZKPS and selective disclosure you are starting to talk about tens of gigabytes of data um very quickly which just becomes unworkable in this model. So again, I think we should have a design ethos of keeping DTGs as light as possible because the graphs are go we want to have very very large graphs that are very very dynamic. We do not want to have extremely fat, heavy and slow graphs that become inefficient to actually work with. >> 100% agree with you. I I I I feel that's that's that's a kind of architectural u uh philosophy that I I almost feel we we should document in the general repo and just say hey this is this is because you know folks should understand that. >> Yeah. >> Um okay we only have uh 10 minutes left. Um if that satisfy that one then we have either the have new credential uh type or the ceremonies uh question. What's which one's more important to talk about? I would say the delegation one's probably more important because ceremonies is still under heavy dev work and I think part of the goal between now and GDC is getting the ceremonies properly set up so that we can look at it materially. I think it's hard to understand what the ceremonies look like end to end when we don't have one fully instrumented end to end. So then you can't really see it. >> Okay. So when you say delegation, is that the new credential type you're talking about? >> New credential type. So in what we're running into, and this is coming up, I don't think it's coming out of the ceremonies when you start having things such as parents who are acting on behalf of a child or an adult parent acting on behalf of um a elderly parent or actually a maintainer who may be acting on behalf of another maintainer. for example, you know, maybe someone is on leave and I've delegated my approvals while I'm away to someone else. Um, or in the case of AI, fiduciary AI, I am delegating authority to another entity to take action on my behalf. That does not exist in the DTG structure um today. So, I'll give you kind of an example. Um, you know, I thought that the endorsement credential potentially could look at it, but it's [snorts] VEC's are kind of an unverified opinion. You know, I think Glenn is good at Rust. Um, verse Glenn may spend my money. They are two very different statements and should not be in there. Uh, a delegation. So, a VDG would be a delegation credential. It would have scope. It would have what the parent delegation digest is. If it's redelegated, it would uh actually use ZKP for um what the credential status would be. So you could either have it in there as a raw format or this is actually where I think ZKP slots in really nicely as a easy first grant which is the DTG sorry the uh VDC would be saying that there's a delegation authority between these two but you can't see what the delegation authority is unless you've got access to the ZKP chain uh which will then tell you you what you may or may not be able to do with it. I'm happy to write it up and send it through, but uh right now there's no ability for me to track a delegated authority in the open source communities, which happens between the maintainers, contributors, and you know, I'm delegating authority for you to merge PRs, for example. Some of the very conversations we had here. >> Yeah. So what Glenn says makes sense to me. Um the the thing I just wanted to raise, you know, I think that's a decision point. You know, he kind of flagged like an endorsement credential could be another alternative path and he gave a reason why that's not a good choice. Um I just wanted to also raise this issue of like let's say roles within a VTC. um we're going to need some way to say okay uh you know Martina is co-chair of the DTG working group you know um so these kind of role assignments it's it's not the same as delegation but it's also some formal designation that maybe is different than an endorsement so I just wanted to throw that into the mix as we're deciding how to handle it so 100% backing what Glenn says but also flagging that role question that is going to come up pretty soon. >> And today in OpenVTC, we're using the VEC, the endorsement credential, as a proxy for the RO credential, Brendan, which it's working, but uh [laughter] may get confusing uh to others. >> So, I put in the comments, you had me at delegation, right? This is just Oh, I'm sorry. I did not see I sorry I just didn't see your first Martina. Go ahead. >> Okay. Um Glenn I just you tapped into both a little bit. So so I just would like to to dig a little bit deeper. Uh you mentioned delegation and authorization in the sense of the delegation of authorization. Yeah. >> So what's the difference from your point of view in this context between delegation, pure delegation and authorization? Why why isn't it called for example uh WAC like verifiable authorization credential? >> Uh because I'm Australian and we use lazy language. >> No, good. I'm just I'm curious about your your thinking. I'm I pick delegated because again probably more bias of as I work very heavily on the AI side as well that is the natural thing which is I'm delegating authority to somebody else um um it's just language if I'm not wedded to it if it was you an authorization um you know I'll give you I'll give you a sentence and just see they both work right um Glenn has delegated scope to Martina for payments until December. Um Glenn has authorized uh scope of payments to Martina until December. Both work. I think it's just a question of which one >> I think maybe there there is a I I just feel I >> there is a slight difference. I mean delegation is more like it's your authorization in the first place, right? or or your task or whatever and you give that for a certain amount of time, maybe also only partially or 100% >> to someone else, maybe because you're on vacation, whatever. >> Um, and then you take it back and it's yours again, right? So, so I think there is a slight difference, but maybe the native speakers. >> That's that's you just nailed why >> you just nailed Martina, why delegation, I think, is the right word. And you may have noticed if anyone ever needs to that the diagrams I've been using since March. >> Why? >> Uh I was just sorry I was just I looked up the definitions and the definitions help that's what we should have used. >> Can I just briefly say because time is running out this then leads to the question do we need authorization as well or would delegation be enough? No, I'm not. >> Well, I think what we're calling authorization was what Brendan's actually talking about as the role credential. Um, I just put it in the chat, by the way, if you want to know what the difference is between the two. But, um, delegation is where I'm giving decision- making power to some other entity. You can you have autonomy to make decisions on my behalf. Uh, whereas authorization is you're allowed to do an action on my behalf. Um, and so that's maybe the simplest way of doing it. Um, >> yes, >> perfect. >> I also also agree with that one. Anyway, I was just going to point out in my diagrams explained DTG that the big aha is when you actually show um what we call the authorization uh the authorized delegation between a person and an agent or between a community and an agent. Um it works every time. And so anyway, that also that is the discussion the whole rest of the industry. I mean, Glenn, that was your whole point of saying, you know, they got internet of people, internet of agents. >> So, um, >> I was wondering when we were going to get to this point. I literally took a snapshot and just put it in my um my personal, okay, we finally got to that point. So, I I'm fine. Are we posing who are we saying let's do a PR to add that credential type? >> Yeah, I'm happy to I'm happy to raise the PR with it. and what the structure of the credential could look like. >> I agree. I just think there may be more discussions needed for the authorization part because I don't think it's just limited or defined by roles because it could just simply be access to your mailbox whatever >> or two. >> I was going to say there's the upside that yes, we finally tackled this. The downside that now we have to now we have to deal with a Tina um my AI agent is authorized to access my email but it is not delegated to send emails on my behalf. >> Yeah. Yeah. Yeah. Exactly. That's the difference between the two of them. But your your your AI agent doesn't need a specific role. It's not the role of mailbox >> um >> maintainer >> reviewer. Yeah. Reviewer >> or whatever. Right. It's just >> again it's a bleed over >> some entity >> of how our back works which is >> the role is the proxy for the authorization policy is basically what it's doing. >> So I and I know we're going to run out of uh time here but um Glenn the one thing about a delegation credential is that does that then require us to specify the delegation semantics? Um, is is that >> yeah, there'll be it is a little >> it's a more complicated credential for sure, but let me let me write it up and then this one absolutely needs to be reviewed quite heavily. >> Yeah. Okay. >> Um, but this one should go to the ZKP group. it should go to the wider uh community for discussion and for exactly what Martina said, you know, asking these types of questions, having people just think about what do the words even mean. I think the words in DTG are very critical to get right. >> Yes, absolutely. It's a martine all the way back to our glossery. >> Yeah. >> All right. Um Brendan, we didn't we were going to save time for you to uh um you know, give a a summary. or do you think you can? Um, >> yeah, I'll just I'll do what I can and of course anybody else here can jump in, you know, if I think I if they feel I missed something or uh misstated something, so I won't be offended if that happens, but I'll try to just give a little summary of where we're at. >> Okay, fantastic. Um, just a heads up, I'm just poll next week, I think, let let's plan on the following week we're going to be at GDC, a bunch of us. So, um I mean those who are not there are welcome to have it, but I don't think we're going to be able to um uh uh hold the call that week. Um yeah. Okay, fantastic. Um this is, you know, I think it's obvious now why we need these calls. Thank you again, Jeff, for uh um for that heads up. And Jeff, you're you're gonna are you going to kick off the the u uh creation of that the new repo? >> Yep, we'll take care of it. >> That is fantastic. you're an amazing set of folks to work with and I tell you we uh yeah I I'll I'll tell you more about the Malry experience uh uh on the call tomorrow. I will make sure I I will take the action item to set up the uh uh template for the agenda and as always anyone can edit it and we'll see you well some of you on the next two that's three straight hours of uh task force calls now on Tuesday mornings Seattle time. Um, so see some of you on those calls. Otherwise, see everyone tomorrow. >> All right. Thanks everyone. Have a good day. >> Thanks all. >> Bye everyone. Take care. Bye.