Pre-Proposal - POKTscan Geo-Mesh Reimbursement

Attributes

  • Author(s): Michael O’Rourke Sr. & Jorge Cuesta
  • Recipient(s): Michael O’Rourke Sr.
  • Category: Reimbursement
  • Fulfills: None
  • Related Installments: None
  • Asking Amount: The equivalent to US $325,000 (5.3M POKT @ 0.065 spot 7 days Avg) to cover development costs and initial maintenance.

Summary

The Poktscan Geo-Mesh client allows all node-runners to take advantage of relay traffic worldwide without having a full Pocket Node at these locations. Implementing will improve the overall QoS of the Pocket Network while giving all node runners, small and large, the ability to compete for relays.

The Poktscan Geo-Mesh was announced and open-sourced to the community in October 2022 through a forum post POKTscan’s Geo-Mesh.

At Poktscan we believe that providing data, software tools, and infrastructure to the community is essential for advancing Pocket’s growth and promoting collaboration. By sharing resources, community members can build upon each other’s work and create new tools for the greater good of the community.

We will soon be launching the new poktscan.com portal (temporarily @ v2.poktscan.com) and sharing additional tools for infrastructure management and node performance. POKTscan also intends to focus on tools with embedded machine learning models that will be used to analyze data, perform simulations, and visualize results.

By making some of these resources widely available, community members and researchers can work together to solve some of the complex problems POKT will face in the future.

Motivation/Rationale

Better the quality of service of the POKT network while reducing the cost of deploying infrastructure at global locations.

Intended Outcomes

Since then Geo-Mesh has been deployed throughout the network. Post-production deployment, the Poktscan team has provided support, corrected bugs, and added new features to the product.

POKTscan intends to continue to enhance and support beyond V1 given that the Geo-Mesh code will not be included as part of this release.

Although we can’t accurately quantify how many node runners have deployed Geo-Mesh, we can get an idea from GitHub forks, community reported bugs, and our discord survey.

Deliverable(s)

Geo-Mesh

Idea, R&D, development & testing (8/22-10/22)

Doc: https://github.com/pokt-scan/pocket-core/blob/5818dfe90634f198f967d400ed4c0fb835825a48/doc/specs/mesh.md

Branch: GitHub - pokt-scan/pocket-core at ew-halt-integration

Source: GitHub - pokt-scan/pocket-core at mesh-node

Community launch (11/10/22 ) POKTscan’s Geo-Mesh

Select community feedback, collaboration, & bug fixes (11/10/22 - to date)

Community survey:

5 Likes

Geomesh and LeanPokt are two of the biggest contributions to the ecosystem in the last year. This proposal seems fairly priced for the work, and I support it without reservation.

10 Likes

Short and simple, and straight to the point. Huge respect for

  1. Freeing up bandwidth so the Protocol team can focus on V1
  2. Fixing a race condition and a memory bug that’s been prominent since practically forever. Ever wondered why your Pocket core crashed under heavy servicing… well not anymore!
  3. Prioritizing the network’s health/ecosystem rather than privatization
  4. All the free data analytics we’ve gotten from Poktscan as far :wink:
9 Likes

Geomesh is a significant improvement of the network. It helped many small node runners break even. Kudos to the POKTscan team. I completely support this proposal.

5 Likes

Hi, I am @deblasis, a member of the V1 protocol team. I bumped into this randomly from a tweet.

For starters, I need to point out that these are my own views.

With all due respect, I am personally strongly against this proposal.

I am not neglecting the effort and time spent working on this, actually, it is part of my point.

I understand that GeoMesh aims at lowering latency for the end users and that (I need to wrap my head around that part…) is supposedly going to help smaller node-runners.

TL;DR: my reasoning revolves around resource utilization and priorities for the project.

I think we should prioritize and allocate to must haves instead of nice to haves.

Why?

  • I didn’t read anywhere that Pocket was struggling with high latency and they needed to be lowered. I didn’t see any bounty either.
  • I did read that V0 cannot scale, that meanwhile we don’t have V1 we need to keep V0 alive by any means necessary.
  • Does this change really help Pocket progress towards a brighter future? (emphasis on the word future ).
  • Is this change aligned with the mission/vision?
  • I thought that V0 was basically in maintenance mode and that V1 is the main focus right now (anyone please correct me if I am wrong) and we are working hard to make it happen ASAP. But then I see multiples of the average POKT grant (that vests over 4-5years…) given away like this for something that at this right moment we could live without. :man_shrugging:

I shared my thoughts and concerns with @Olshansky so there might be more coming from the team as well.

4 Likes

Hey @deblasis, great to see you on the forum!

While I agree that v0 is mostly in maintenance mode while v1 is being produced, geo-mesh was arguably one of the most significant v0 upgrades to protect against node centralization and preserving POKT’s collaborative node community.

There is history here that I think is important to understand. Over the summer, a few node providers figured out geo mesh, and developed their own closed-source clients. Their numbers put them 2x to 3x above everyone else, and some of those companies had the fastest node growth in POKT history. The node community was scrambling to figure out how it was being done. Since a few providers were getting 3x the rewards, the other node runners were now starting to get substantially less (on top of already challenging market conditions). Huge amounts of technical debt and resources was spent by many to try and figure out how to run nodes in a way to get that level of rewards.

This had a major tole on the node community as a whole, especially on the independent node running community. The few companies that figured it out started gaining market share and signaled no intent to explain, or much less open-source, what they were doing. Rewards become a black box in the community. Had POKTscan not dedicated their team to figuring it out, our node landscape would likely look very different. Over the summer many independent node runners gave up because there just wasn’t a way to compete. No doubt these few provider absorbed many of these demoralized node runners who didn’t have any idea how to compete.

Now, it’s perfectly fine that some providers found a market advantage and took full advantage of it. Kudos to them… no hard feelings what-so-ever, as they were making savvy business moves. But POKTscan’s geo-mesh leveled the playing field from a much larger node consolidation trend. Geo-mesh allows there to still be profitable independent node runners until v1 comes around. It was a significant investment to dive into core-code and figure it out themselves. They did so in a way that did not rely on heavy PNI’s involvement, thus not taking resources away from v1. I don’t believe PNI was involved in any way actually.

So while geo-mesh is strictly a v0 feature (from my understanding), it is vitally important that while the network is in v0 maintenance mode, we don’t consolidate into a few companies with closed-sourced clients. v1 will not have the intended impact if POKT’s decentralized, collaborative culture is demoralized into centralization. No other proposal has been more meaningful with preserving POKT’s node runners community.

I humbly disagree that geo-mesh is something we can live without. We need to protect POKT from centralization, especially from closed-sourced clients, regardless of if it is v0 or v1. The DAO should in-fact incentive innovations that bring equality and preserve the decentralized spirit, regardless of v0 or v1.

Regarding their asking amount, I’m withholding my opinion in the short term while I do background research.

8 Likes

Thanks for your words @shane

So far, I know based on Core members of Pocket, v1 will not have/support something like Geo-Mesh as part of their code. So, we will extend current Geo-Mesh functionality to v1 asap it is ready to use/try on testnet.

1 Like

Hey @Jorge_POKTscan, glad to see this proposal up on the forum! Overall I support GeoMesh’s success and continued development.

I wanted to confirm on this thread, so everyone is aware, that GeoMesh/Global DNS is not a V1 feature. V1 will incentivize low latency through Geostaking. The number of GeoZones any actor can stake for is limited to one to incentivize real geographic distribution. This is another reason why GeoMesh as a “sidecar” to Pocket Core makes a lot of sense from the team’s perspective.

Since you noted that you will support GeoMesh through to V1 and potentially beyond, I think it would be good to be clear if POKTScan will be seeking additional reimbursement for GeoMesh in the future and that this grant only covers the deliverables outlined, or if the grant is also intended to cover initial deliverables + the ongoing support of GeoMesh over time. This will help the DAO and forum readers understand exactly what the funding is allocated for and what they can expect from the product, and their investment in its development, moving forward.

4 Likes

Hey @shane, thank you so much for the wholesome and detailed reply! I really appreciate it.

I should probably clarify that what bugged me particularly was the amount of POKT in question.

I just felt uncomfortable because realistically I am not sure I’ll ever own even half that amount of POKT in my lifetime :sweat_smile:. I guess it’s only healthy to flag it even if there are no actionables (that I am not expecting anyway from anyone reading this).

Going a bit on a tangent, this conversation makes me wonder what would happen if I worked on something in my spare time (that solves a real problem/adds some feature) and submitted a proposal at some point. Would it be weird if that was coming from a V1 dev? Yes? What if I used an alias? :performing_arts:

Regardless, maybe I came across too aggressive in my message from earlier but I am just passionate and in all honestly, I am here because I care a lot about the success of the project.

Generally speaking, I know that there’s no such thing as fairness because it’s all about perspectives but similarly, I would be happy to be on the receiving end of a passionate “I strongly disagree with this proposal” and have a healthy conversation about it.

This is the beauty of what we are trying to build I guess…

@Jorge_POKTscan, nothing personal or demeaning of your work, of course, I hope you can understand where I am coming from.

That’s all. :v:

5 Likes

Nah man, understand where you are coming from, but you also have to balance it with respect to the organization that you represent. This is the DAO paying contributors which is independent but could be inclusive of PNI employees being paid as well - that’s up to the voters.

Yes, a bit weird given your organization was given a lucratively amount of POKT from initial token genesis, PNF, and the DAO from the early beginnings. If you have questions on where that USD and POKT went, escalate to your EM and leadership first. I’m not opposed to it, but I do think we need to start diversifying into other communities first.

Anyhow - this conversation can easily derail really fast. If PNI protocol engineers or employees feel unfairly compensated (even after PEP-49), I think we should open up a conversation about that. Jinx has opened up some of these conversations already: Compensation Structure for DAO Contributors - #38 by Caesar

5 Likes

Much thanks on this clarification. I think this is a very valid point, for both this proposal and the PoktFund LeanPOKT proposal for 7M POKT.

I personally am glad to hear v1 contributors join these conversations, as all contributors should be treated equally in the DAO. This was actually my central point, when LeanPOKT was asking for $2M prior to releasing their work.

Below was my primary point :point_down:

NOTE: I meant PNI, not PNF above.

This is very much why I believe there should be structures in place to evaluate the value of proposals. We do not want core devs to be underpaid compared to high rewards being given to other contributors. We don’t want a feature being added by a dev at PNI to be a Tuesday at work, while feature from another individual out of PNI being a multi-year salary.

In the past, many core contributors were POKT OGs, so they had bags of varying degrees. Now, many contributors to v1 are not OGs and are being vested over time their POKT (which is what PEP-49 was all about). Now that PNI, and v1 team particularly, is a lot of newer contributors, we need to be prudent to how we reward some contributors over others.

This is why a value model is important IMO. It takes the guess work out “why should this contribution be valued more than another” because the value is tied to tangible metrics. I’ve been a part of DAOs outside of POKT and this conversation about value ALWAYS comes up :sweat_smile:

All funds went into the POKT ecosystem, unless there is something I’m missing. You may have different beliefs on HOW those funds should have been spent, but they were spent on growing the ecosystem. Also, PNI’s first proposal for funds from the DAO was PEP-49 as far as I know.

Regardless of one’s belief on how funds were used to grow the POKT ecosystem, it’s a valid point IMO that we find balance in with our incentive models.

Valid point as well and something we want to avoid.

I think it is absolutely fair to compensate a company like POKTScan for work, as they weren’t operating on funds already from the ecosystem (as @poktblade alluded too PNI given early POKT). Finding the right value balance is important, so that companies are inventive to contribute to important parts of the ecosystem, because their time will be compensated, like a contractor.

3 Likes

Hi @jdaugherty to be clear this is asking the reimbursement for the v0 contribution. We can’t ask money for something that we don’t know how much will require from us and maybe from Pocket core team to get done and working properly like the current one is doing.
For sure this current version will be updated if Pocket core need to update or anything like that v0. Hope this clarify your doubts.

4 Likes

Thanks @Jorge_POKTscan! So this will cover the lifetime V0 development (rebases, bug fixes, etc.) and TBD if there will be an additional reimbursement for V1 in the future. Appreciate the clarification :pray:

5 Likes

tl;dr I like everything POKTscan team does but believe the POKT asking amount is too high and proposed other ideas.

Before I chime in, I want to say that I fully support the POKTscan team and everything they do for the community.

  1. Their team builds and maintains poktscan.com, which I use daily
  2. I use their service to stake several nodes
  3. Their team has given me access to their API to help debug various v0 issues
  4. Their team is helping us collect data in various v0 scaling efforts

With that said, I wanted to build upon what @deblasis and @shane discussed and add my own opinion on a couple of topics:

  1. Incentives for core protocol devs
  2. An amendment to this proposal

Incentives for core protocol devs

Even with PEP-49 passed, the asking amount in this proposal is still significantly greater than what any protocol developer at PNI vests over a 4-year cycle.

Until a mature and self-sustaining version of the protocol exists, there is still a need for a core team to manage v0 and build the foundation for v1 to work more effectively, at the cost of not receiving such sizable grants from the DAO.

Seeing such grants being given to community members creates a disincentive for anyone to work on v1 as an internal team member because any core protocol developer can:

  1. Work on more visible & immediate v0 features/tools
  2. Work on V1 bounties while maintaining another full-time job

An amendment to this proposal

Regardless of whether GeoMesh is a v1 feature or not, or whether it aligns with the vision, I believe we can agree on the following:

  1. GeoMesh reduced latency in the network
  2. The tools the PoktScan team builds and maintains are invaluable to the community

My amendment aims to optimize for the following:

  1. Maintaining a DAO treasury for future work
  2. Normalizing the payout

Maintaining a DAO treasury for future work

The DAO’s treasury after PEP49 will be at < 100MM POKT, meaning that this one feature is worth > 5% of everything they can plan to fund (marketing, design, v1 development, other v0 features, etc…) in the near future; I’m not taking newly minted POKT given how much inflation is slowing.

I don’t have a good way to quantify what this number should be, but my gut is leaning towards closer to ~2%.

Normalizing the payout

My guess (correct me if I’m wrong) is that the asking amount was based on “contracted human hours” (i.e. num_hours * $/hour) plus infra costs, which amounted to $325,000. @Jorge_POKTscan If possible, it’d be useful to see the breakdown of where this number came from.

The conversion from USD to POKT was done using a 7-day spot avg close to an ATL, so even if we agree on the fiat amount, it is a large fraction of the existing treasury. Since the exact POKT asking amount was not specified when the project started, I would propose the following:

  1. Agree on what the USD amount should be (based on a breakdown provided)
  2. Pay out the amount in monthly installments (total/12) over the next 12 months using a monthly USD/POKT average every month.
5 Likes

You cannot compare full-time employees to DAO compensated contributors.

One can say “I don’t have that much $Pokt and have never been paid that much”.
Well, How much have you been paid in USD from Pocket Network Inc.? You could have used that to buy more $Pokt.

I do like this method of thinking. Is the payout percentage in terms of total DAO treasury worth it or how much is it worth?

I absolutely do not agree with this. The work you do over the months is directly contributing to the price appreciation. Essentially, your contributions are directly correlated with the devaluation of your stack.

I think PoktScan could have worded this differently and said that they will be working on many more initiatives and products to push the ecosystem forward. If I were to solely payout for Geo-Mesh, I would say 2.5-3m $Pokt and another 2-3m $Pokt for future contributions/products.

3 Likes

Another thing to keep in mind, I think individuals employed by a private company have a different work ethic than someone contributing to a DAO. Please don’t lambast me. I come in peace.

Individuals given a paycheck and $Pokt as part of their employment contract likely go home and don’t even think about work, whereas DAO contributors think about present and/or future contributions all day.

*lambaste - dammit mfker :rofl: :facepunch:

5 Likes

*lambaste

But, I won’t do that.

5 Likes

So, surprising everyone here, most especially @ethen , I absolutely agree with him. It’s different to work at risk on contract, and the valuation of contract work reflects that risk.

That being said, I think it’s very fair to be a highly qualified engineer on the PNI team, and to feel like your contributions aren’t valued. Worse, you’re held accountable for movements of the greater org when you personally have zero influence over that, and you certainly aren’t personally benefitting from it in the way that the community at large might think you are.

Big props to @shane for pushing hard to make this entire process more equitable.

I have a lot to think about over the weekend. I value both the builders in this community, and the incredibly talented PNI engineering team equally, and I want everyone to feel like they’re winning.

More later.

6 Likes

I agree this is a great suggestion for guiding the discussion about the reimbursement amount:

num_hours * $/hour plus infra costs

A clarification that could be helpful to include in addition to that calculation would be how many GeoMesh contributors there are (is the asking amount representative of a team or individual effort?). It’s not necessary to break down an allocation by contributor, but thought it could be a good data point for further discussion about the asking amount alongside the man hours. Thanks!

4 Likes

I don’t want to go too off tangent here- but If a Core Dev does their day job, ‘comes home’ and then starts work on something additional for the Project that is beneficial, I 100% support that and would vote for payment.

I don’t want to be another person agreeing with Ethen in a 24 hour period… but he’s right that we should be doing everything to incentivise good devs to make more + better products, both within PNI and externally as additional contributions. If someone who intimately knows Pocket wants to spend their evenings and weekends doing additional building - we should be throwing money at them.

7 Likes