Closed aulneau closed 2 years ago
Thanks for submitting a grant proposal. Our team will review your submission and get back to you.
OK, you convinced me. I'll send a PR with my solution as I already have it ready:wink:
OK, you convinced me. I'll send a PR with my solution as I already have it ready😉
WOOOOOOOOOOOOO that would be amazing
Hello and thank you for participating in the Stacks Foundation Grants Program!
We are in the process of migrating from GitHub to the new Grants Dashboard. In order to complete your grant, you will need to submit any remaining Progress Review and/or Final Review requests through the Dashboard in order to receive your remaining payments.
Lastly, please note we are marking this grant 'closed' on GitHub for organizational purposes, but it is still 'open' on the Grants Dashboard.
Thanks and we hope to continue to support your efforts with additional grants!
Best, Will
tldr: I'm hoping to find a rust engineer to implement some changes in the stacks node software, using this guidance.
Background I'm writing this wishlist grant with the hopes of finding someone or a team of folks who would be able to meaningfully contribute to the Stacks Blockchain code base. Specifically, there are some changes I think should be done around what kinds of events are emitted by a node. Currently, the events emitted are things like new blocks, new mempool transactions, etc. These events are then consumed by other applications (such as the Hiro API) to produce useful information.
The two areas in which I think new events should be emitted are:
I've received guidance from one of the core contributes to the stacks blockchain, and they were gracious enough to detail nearly exactly what steps need to be taken to complete this work: https://gist.github.com/aulneau/6df7e9dc8c63ad5ff7feb855825c68b9
Project Overview
Clarity state change events
It's possible for events to be emitted when any value changes within the clarity VM. This would be incredibly advantageous because it would allow for APIs and indexing services to be built that consume these events. These indexing services or APIs would then be able to expose historical changes to clarity state over time. Additionally, you'd be able to access (or correctly reproduce) any
read-only
values without needing to interact directly with a stacks node. The potential use cases of this are really endless, and I think would open up so many new possibilities for building sophisticated stacks based apps.Contract calling other contracts
Currently, it's very hard to know the source of a contract-call. Contracts are composable, meaning other contracts can call other contracts. Some examples of this: any of the citycoins mining contracts, or stacking pools. It would be incredibly helpful to be able to know when this happens for a number of different use cases; I've specifically ran into this in my time running stacking.club
Budget, milestone, etc
I think this would be a hugely positive project, and something I've even considered personally funding. I think the impact would be wide ranging in the ultimate application of these changes in things like indexers and APIs. I would defer to whatever standard ranges would be for rust engineering.