Development meeting held @ 3PM UTC in grincoin#general channel on Keybase. Meeting lasted ~ 100 min.
Notes are truncated, and conversations sorted based on topic and not always chronological. Quotes are edited for brevity and clarity, and not always exact.
Community attendance:
- antiochp
- dtavarez
- i1skn
- joltz
- lehnberg
- paouky
- phyro
- quentinlesceller
- timtimbo
- tromp
- vegycslol
- yeastplume
(apologies if I missed someone - submit a PR or contact @lehnberg to add)
The proposed agenda was reviewed and accepted without any changes.
-
lehnberg: Funds have been paid to @dtavarez and @i1skn, and @paouky also received month 2 payment. Question on that: I haven't heard much from @i1skn and @dtavarez, I assume they are both busy building. Is there some update thread somewhere where we can follow along on their progress?
- π: quentinlesceller
-
dtavarez: Grin++ backend is already running on Android.
- π: lehnberg, phyro, joltz, quentinlesceller, vegycslol, i1skn, timtimbo
- π€©: anynomus
-
dtavarez: From time to time I'm receiving a segmentation fault that I need to trace and fix π€
-
i1skn: Yeah, I actually been thinking on how to best communicate the progress recently and came up with the following: I will create a simple page with the roadmap and will be updating statuses of each epic. Also will be posting in the ironbelly telegram channel on what new is coming.
- π: vegycslol, phyro
- lehnberg: Oh wow that's nice - a weekly post on the forum or so is probably more than enough though. No need to spend too much time on it, just to keep everybody in the loop on the progress you make.
-
i1skn: Regarding the actual progress, I'm finishing implementing slatepack into ironbelly, so users could just copy-paste the text instead of passing files back and forth. This is the first step into direction to tor implementation..
- dtavarez: I already have tor compiled for android arm if you need help.
-
dtavarez: For the end of this month I will release all the screens of the mobile app to receive some feedback from the community; I stopped coding for the last 3 days because I'm writing a RFC since I want to simplify the wallet restoring process, so I'm digging more and more into the grin-wallet codebase to see how things works.
- π: quentinlesceller
-
lehnberg: Not meaning to be rude, but wasn't asking specifically for progress updates here in the governance meeting. But would be great if we could have it on a regular basis on the forum. β are you both okay with providing that?
-
dtavarez: Yes, I'm ok.
- π: lehnberg
-
i1skn: There were some hiccups with compiling croaring and some other libraries, which have been added to grin-wallet recently to ios and android, but so far only one problematic library is left, so I'm optimistic:).
-
lehnberg: Great looking forward to picking it up there. Sorry to interject just wanting to keep the meting on track.
- π: phyro, i1skn
-
lehnberg: You okay with forum updates too, @i1skn?
- π: i1skn
-
i1skn: Sure, I will be than just x-posting the link to the post into Ironbelly channel. :)
-
lehnberg: That's more than enough. :) Not everyone might know about the Ironbelly channel so it's free marketing for you.
- π: i1skn
-
lehnberg: Since the forum is where your funding request came in, it makes sense to update the same people that browse it. Great, thanks both!
- π: dtavarez
Actioned.
-
lehnberg: Following decision last week, it's now been updated and moved to the website: Https://grin.mw/policies/code_of_conduct.
- π: antiochp
-
lehnberg: Questions about the work might be clarified by this post: https://forum.grin.mw/t/the-forum-has-an-updated-code-of-conduct/7843/14.
-
lehnberg: Meanwhile there are also a bunch of prs adding the coc reference to our repos, which are in need of merging: mimblewimble/grin-wallet#518 #350 mimblewimble/grin-security#12 mimblewimble/grin-miner#254 mimblewimble/grin-rfcs#66 mimblewimble/grin#3447 Would be great if these could be reviewed, approved, and merged as soon as possible.
- antiochp: I can take a look over some of these later on.
- π: lehnberg
- antiochp: I can take a look over some of these later on.
-
paouky: I don't mind, but not sure what's there to approve?
- lehnberg: The pull request "yes, this is okay".Otherwise I'll get flamed somewhere for changing all the project's cocs singlehandedly.
- paouky: Seems odd but ok.
- antiochp: "two pairs of eyes".
Actioned.
Actioned.
3. @antiochp Q4 request for funding
- lehnberg: We have @antiochp funding request:
3 months, 3 x 10k eur, oct-dec, full time
. Questions? - antiochp: Aka "fund me to argue with people on the forum".
- π: yeastplume
- lehnberg: Hey that's my job!
- quentinlesceller: Lol.
- antiochp: I'm hoping to be able to dedicate some time to helping with pibd, but not realistically expecting to get to much else between now and end of the year - we are light on resources on node and I'm going to be working on whatever comes up.
- lehnberg: That's fine by me. You are our node mvp and have been doing the lord's work here holding up the fort more or less solo for the past 12-18(?) months.
- π―: yeastplume, joltz, phyro
- paouky: Some on grin wallet as well ^.
- lehnberg: I am personally strongly in favour of keeping you on full time for as long as you are motivated to do so.
- π: joltz, vegycslol, yeastplume, phyro
- quentinlesceller: Yeah me too.
- paouky: Aye.
- yeastplume: Completely agreed.
- paouky: Would we even have grin without antioch lol?
- joltz: Would have to call it frown :)
- tromp: Antioch consistently delivers major code improvements. Hugely in support.
-
lehnberg: Okay, any detractors?
[...]
-
lehnberg: I take this as consensus to approve the funding request.
- π: joltz, vegycslol, quentinlesceller, phyro
-
lehnberg: Congrats @antiochp πΎ
- π: phyro
-
phyro: Let's just extend it to 6 months... Just in case to lock him in lol.
-
joltz: Glad to have you back for another round!
-
antiochp: Thanks all! π
-
paouky: I'd say we can transfer the paouky repos to docs.grin.mw already, at least open a pr for it.
-
quentinlesceller: Yes we just need to fix the RFC first.
-
paouky: Ye. While we're at it, can it be arranged that I have access to merge stuff over at mimblewimble/docs? To help keep it going in the future. (obv now it's open to everybody but that should change imo).
-
lehnberg: What is open to everybody? You mean the wiki?
- paouky: Ah yes the wiki.
-
quentinlesceller: I don't see any issue with that personally.
-
lehnberg: Yes, you've definitely earned it. So are we keeping the wiki?
- paouky: No.
- π: quentinlesceller
- paouky: No.
-
lehnberg: I've not been following the details.
-
lehnberg: Oki. Would you mind putting together a step proposal somewhere (forum?) with recommended actions and how we go on moving forward (inc. Adding you for commit rights) and then we execute against that? Or: If it's like three small things I guess we can just agree on it here.
-
quentinlesceller: Yes I think that'd just be easier to agree here.
- π: lehnberg
-
lehnberg: Are we ready to do so now?
-
quentinlesceller: We can create a new grin-doc team in grin org.
- π: lehnberg, paouky
-
lehnberg: But so... What's the whole plan.
-
paouky: Ye haha.
-
lehnberg: There's docs.grin.mw β points to where?
-
quentinlesceller: Create a new grin-doc repo.
- lehnberg: You mean
mimblewimble/grin-docs
?
- lehnberg: You mean
-
lehnberg: There's rfcs, they are inside docs?
- quentinlesceller: Yes.
-
paouky: Why not use mimblewimble/docs? Why a new repo?
-
quentinlesceller: Then github host it. Point the dns on it (docs.grin.mw).
-
quentinlesceller: Yes and yes @paouky.
-
paouky: Oh ok.
-
lehnberg: What happens to
mimblewimble/grin/doc
? -
paouky: Stays.
-
lehnberg: Why?
-
quentinlesceller: We keep it but remove the wiki?
- paouky: Imo, yes.
-
paouky: It has some technical stuff that might be useful and isn't included in the new docs (outdated or way too technical).
-
lehnberg: If it's redundant documentation, then why keep two sources of truth;
if it's not redundant, then shouldn't all technical docs be in one place?
-
quentinlesceller: I'd remove grin/docs after. Or archive it somewhere.
-
lehnberg: We could keep /grin/doc and just have a
readme.md
that links to docs.grin.mw. Just like we do for code of conduct now: https://github.com/mimblewimble/grin-pm/blob/master/CODE_OF_CONDUCT.md -
paouky: I mean... What's left in grin/doc is for the developers.
- lehnberg: So what's in docs.grin.mw is not for the developers?
-
paouky: If they don't think it's necessary then we can let go of it, not my decision.
-
antiochp: Yeah I think its reasonable to "archive" any remaining docs (by keeping them in grin/docs). And have a readme to explain what's going on.
- π: paouky
-
paouky: @lehnberg take for ex. a grin/doc file which shows the binary seralization of rangeproofs. Can it be useful for devs? Maybe. Should it be in the docs? I doubt it.
- lehnberg: Shouldn't that be part of the technical docs?
- paouky: No it's really bad, just something someone put up together a few years ago for reference. A few docs are like that.
- lehnberg: Is it outdated?
- paouky: Might be (i do not know). Also not understandable imo.
- lehnberg: https://github.com/mimblewimble/grin/blob/master/doc/rangeproof_byte_format.md
This one?
- paouky: Yes.
-
lehnberg: Okay guess I'm getting way too deep into the details for this meeting.
- π: quentinlesceller
-
paouky: We should transfer any technical document every written by anyone.
-
paouky: Ye we'll discuss later.
-
lehnberg: No, but any irrelevant technical documents we shouldn't keep either.
-
paouky: Some are just partly irrelevant and may help future devs.
-
lehnberg: And if nobody in the active team can tell whether it's useful, it's probably not useful. Oki - so what are we agreeing on?
- Disable wiki.
- Repurpose mimblewimble/docs.
- Point docs.grin.mw to 2.
- Point rfcs in grin-rfc repo to show under docs.grin.mw?
-
paouky: Maybe take grin/doc, transfer everything to grin/doc/archives, then add grin/doc/readme.md that points to the docs.
-
quentinlesceller: No 4 is already doe.
-
lehnberg: 5. New github docs team which includes paouky and has commit rights to the docs repo?
- quentinlesceller: Yes this.
- lehnberg: Any objections?
-
quentinlesceller: Tbh don't want to be rude I think we are discussing details right now (should be discussed in #docs).
-
lehnberg: Yeah I agree. Nice work both!
- lehnberg: In order of appearance: https://github.com/mimblewimble/grin-rfcs/pulls
- lehnberg: By @jaspervdm. It's draft mode.
mostly technical details while the reference implementation of these objects happens in parallel.
. I suggest we discuss in rfc. - quentinlesceller: Do we need shepherds for the rfcs?
- lehnberg: Yes.
- antiochp: Not sure if @jaspervdm is around but he's iterating on it right now.
- lehnberg: I propose joltz on this one as he's already the shepherd for ibd.
- π: joltz
- joltz: Sounds good π
- π: quentinlesceller
-
lehnberg: by @paouky and @lehnberg.
### summary this governance iteration replaces the previous process that was set out in rfc#0002 with a simplified and better defined version. Specifically it: * defines its remit to be around the repos, projects, and communities that are centered around the /mimblewimble github organization; * reverts the core team to the original technocratic council structure, whose sole responsibility is managing the general fund; and * explicitly enables individual contributors and teams to self-organize for other aspects of decision making.
- antiochp: :popcornparrot:.
-
lehnberg: Needs some references at the end of the doc, otherwise it's good to go from our point of view. Are there any questions? Thoughts?
(it was @antiochp who started it all last meeting when he didn't even know there was a thing called the core team smh).
- antiochp: And @lehnberg who was not aware of a core dev team. (although to be fair they not actually be one).
-
quentinlesceller: Need to go over the details but I don't think this is going to make any difference in practice wishing I'm wrong though.
-
paouky: The main advantages is whenever someone mentions the core teams we can answer "there is no core team", and governance page of grin.mw would be removed (i assume). It's mainly about the perception. Decision making is already open as is.
-
lehnberg: It's about perception but also more than that. Currently what is being governed is undefined; this RFC clarifies it. Council manages funds. Security team manages security. Etc.... It all feels a bIt... Simpler.
-
paouky: Ye I am just trying to simplify the simplify-governance.
-
antiochp: I actually agree with @paouky there - "there is no core team" is now a valid reply to various trolling on the forum etc. Not sure how well received it will be though.
-
quentinlesceller: Yes my fear is that we are doing because of few individuals. Next step is commit access. Whoever control the commit access control grin.
- lehnberg: Yes, and by this RFC these people self-organize.
-
antiochp: I agree this was prompted by actions of a few individuals - but I also think this is a good improvement, regardless.
-
lehnberg: And I was part of introducing rfc002. When I did so I took it from Rust. Rust has different considerations than us, and for example as a project does not run a decentralized p2p network with potentially many different implementations.
-
phyro: "the holders of the keys" still stands though πΏ
-
paouky: I don't think so @quentinlesceller. I can say for myself that I always thought having an official core teem is very redundant. Regardless of forum comments.
-
quentinlesceller: One of goal of the core team was to hide the identity of the key holders.
- lehnberg: No, That's not right. That was part of the role of the council, and can still be.
-
paouky: It kind of appeared from nowhere when I was not paying attention at the time.
-
lehnberg: And the answer to "hey these key holders are doing it wrong" becomes a straight forward: Fork the project, or build your own implementation.
- π: paouky, antiochp, phyro
-
lehnberg: Or are you talking about general fund or commit rights?
-
quentinlesceller: Oh I see sorry I missed the part about the council still existing.
-
lehnberg: From one day to another, very little would probably change practically.
-
lehnberg: But over time, it does change a lot.
- π: paouky
-
quentinlesceller: But by all mean if this brings us more peace of mind I'm all for it.
-
lehnberg: And "the council" would not make decisions about the project, so becoming picked into it becomes a moot point. You'd probably rather get engaged in the node team if you cared about consensus rules or about mw/grin.
-
lehnberg: We overdid it. I overdid it. I feel I proposed to have added way too much governance stuff on a project that had been thriving without it. And it created a lot of needless friction as a result I think, and a lot of "us" vs "them" that really shouldn't have been there.
-
quentinlesceller: Okay π for me then.
-
antiochp: We give it a go and see what happens π
- π: quentinlesceller
-
lehnberg: Who wants to shepherd this and decide on stuff like fcp and so on?
-
quentinlesceller: I can.
- π: lehnberg
-
paouky: What's fcp?
-
lehnberg: Final comment period. Refer to rfc0001.
-
quentinlesceller: https://github.com/lehnberg/grin-rfcs/blob/master/text/0001-rfc-process.md. Ah yeah the link on the frontpage goes on your fork @lehnberg lol.
-
lehnberg: Yikes haha.
-
quentinlesceller: Nope my bad I think.
-
lehnberg: Oh okay. Great. Everyone who has thoughts, please write on the pull request. Would be good to have as many eyes on it as possible as it's kind of a big change, even if it's simplifying.
- lehnberg: We need this, for the new docs?
- paouky: Yes.
- lehnberg: Ok will merge.
- paouky: Thanks.
- lehnberg: @tromp, it's been up for 14 days, good to close now?
- tromp: Fine with me.
5.5 fix-fees
- lehnberg: Looks like a lot of activity. How does that look? Anyone wants to be a shepherd?
- tromp: Looking good. Aren't I the shepherd? Is shepherd responsible for coding?
- joltz:
the shepherd ensures the RFC progresses through the process and that a decision is reached, but they themselves do not make this decision.
- lehnberg: Shepherd should not be the RFC author 0:)
- joltz: Usually not the author of the proposal.
- lehnberg: @antiochp you up for the task?
- antiochp: Yeah sure - I can take this one.
- π: lehnberg, tromp
5.6 fix DAA
- lehnberg: How's that looking? I see zawy12 reviewed, very nice!
- tromp: Seems choice of wtema as new simpler daa is non-controversial. But reduction of future time limit may be.
- lehnberg: How do you see us getting clarity on that?
- antiochp: Ok so still some active discussion?
- tromp: As long as there remains solid doubt that 1 min is feasible, I guess we leave it at current 12 min. Ftl is how far we allow blocks to have timestamps in future, relative to local clock.
- joltz: Zawi proposed an interesting possible solution to the ntp concerns that might be worth more consideration
to reduce fears of a problem, if ntp or peer time is not currently the default, then maybe nodes could be polled for their current time to see how many are actually off.
- tromp: We don't (or delay) relay of blocks exceeding the limit. So it's not consensus rule.
- antiochp: @tromp want to summarize current thoughts as a comment on the rfc?
- tromp: Ok, will do.
- lehnberg: Who wants to be shepherd?
- joltz: I can. Unless someone who doesn't have an opinion wants to.
- π: antiochp
-
lehnberg: At 114 comments it's broken the engagement record by far.... π₯
Not been keeping up, what's happening there?
-
phyro: So some people have shared an opinion and concerns about it, mostly related to privacy. Some of them are probably valid concerns. I've not been able to bypass these. There's a comment from david that if you know an anchor and another output, there exists a path between them and that you can find the chain of all of the txs between them.
-
tromp: There are generally many paths.
-
phyro: Another one from @vegycslol that if you see an output that doesn't share the subgraph of an anchor, then it doesn't belong to the same owner with high probability (which I assume is true).
-
tromp: Payjoins help create more paths in the graph between any two txs a certain time apart.
-
phyro: Yeah, but it might be possible to actually bruteforce if you keep logging the txs and if the person is not doing many txs. The distance might be very important here.
-
tromp: Compared to having all payjoins (expect for wallet's first receive), adding an anchor to that first receive is a small privacy loss.
-
phyro: Me and vegycslol will try to analyze it a bit today. We'll see what We can figure out.
-
lehnberg: Okay, so sounds like there's still stuff to work out there. Who wants to be shepherd here?
-
tromp: While having payjoins in itself looks like a small to moderate benefit.
- phyro: Not sure what you mean with this.
-
paouky: Good luck to the shepherd on that one...
-
paouky: Haha.
-
tromp: Payjoins help obfuscate the tx graph.
-
antiochp: This RFC may need to stay open for as long it takes.
- π: phyro
-
lehnberg: I'll take it on I guess. Don't have a horse in this race. Is that okay with you all?
- π: phyro, paouky
-
tromp: Sure.
-
phyro: Thank you π
- lehnberg: By @dburkett. Is that still going? Or wasn't it proven insecure?
- phyro: I don't think david is on this channel.
- paouky: Proven insecure, we can close.
- lehnberg: I'll ask on the rfc.
- paouky: There's a forum thread on a different alternative approach.
- phyro: Kurt reworked it a bit I believe, but don't know the state of this or whether it should be assumed the same rfc.
- paouky: No it's completely different.
- lehnberg: We probably want to move on deprecating https RFC now, right?.
- joltz: I think final hf is the timeline on that.
- lehnberg: Yeah, so would be good to have it accepted asap?
- lehnberg: Two weeks final comment period, us dropping the ball a few times etc.
- joltz: Sure, would also be nice to have done when we are approaching exchanges/services to encourage timely slatepack integration.
- lehnberg: Who wants to be a shepherd and show some progress for next week?
- lehnberg: Paouky you're typing I see you.
- π: phyro
- paouky: π
- paouky: I was gonna propose myself but I've no idea what to do lol.
- π: joltz
- lehnberg: Ask @joltz he's an experienced shepherd.
- joltz: I'll walk you through it, will be a good first one to do.
- paouky: Oki.
-
lehnberg: We have
[wip] parallel ibd node dev #52 opened on 21 apr by jaspervdm
qa team core #45 opened on 19 feb by j01tz.
-
lehnberg: Think we just leave these as is for now.
-
phyro: I have a question about shepherds. It says in 0001 that It must be someone from the 'team'. What is this team?
- lehnberg: The team that it relates to... But yeah I think that's very fluid. At the time of writing we thought we'd have way more engagement and organization in the wallet and node teams and so on.
It's basically to prevent drive by shepherds coming in and interfering with the team's work I think.
- π: phyro
- lehnberg: The team that it relates to... But yeah I think that's very fluid. At the time of writing we thought we'd have way more engagement and organization in the wallet and node teams and so on.
It's basically to prevent drive by shepherds coming in and interfering with the team's work I think.
-
lehnberg: Like, if I'm now biased on the replay RFC and try to force it through, I could land a big pile of work on yeastplume's wallet team, potentially without them (he?) having much of a say. Or something like that.
- phyro: I see, thanks π
Meeting adjourned.