Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Item

Notes

Resources


Get URIs back when creating registry entry

  • As a dApp developer who creates a smart contract that I would like to call multiple times, I register it in the registry. What I want get back is a URI in the deploy response as the end of the registration process.

    • Today getting the URI requires scraping from the log or listening for it on name. Possible because gRPC was listening for the call. Originally intended for debugging.

  • As a wallet application I need a way to recover my lost wallet

    • Could be solved if I can predict an unforgeable name (question)

  • I want to pay Bob. I know his public key, but I don’t have the URI of his wallet.

  • IDEA wallet URI is based on public key

Knowing unforgeable names

  • Get IDs back with grpc response

  • Docs for how IDs are calculated

  • Kyle’s RCon3 talk: https://www.youtube.com/watch?v=RtA6hMJUP8E&list=PLf2bbiic5ZjCt_HA_wJR6_EMpxIsiSaFK&index=9

  • I want to deploy a contract and pay for it. To do that I need to create a signature over an unforgeable name. I need to be able to predict the unforgeable name.

    • Kyle says this is possible.

    • IDEA is the solution to be able to generate unforgeable names offline?

  • CONCERN redesigning the wallet system prior to Mercury is likely out of scope, so we do need way to generate and predict unforgeable names

    • This covered in RHOL-752

  • NEED documentation for how unforgeable names are generated

    • Current documentation not enough

  • NEED Venus redesign the wallet

  • CONCERN man in the middle attack - create an unforgeable name/URI offline and then deploy contract and start interacting with it, how do I know someone isn’t changing the facts in the middle or that someone else isn't interacting with the contract

Make local deploys and then roll them back for development or cost estimating

  • What is short leash deployment?
    Not critical: gRPC call to shutdown node?

Get an ast/adt back instead of a string when doing tuplespace dump

Solution that generalizes these:

  • Ethereum-style events

  • A way to get stdout back in grpc response.

  • I want to record a log of my CryptoKitties given a range of blockheights.

  • I want to listen on name given a certain depth

  • I want to monitor a contract without operating a node or making a call to a node. I want to subscribe to events via a gRPC response.

    • NEED subscription feature

      • gRPC level subscribe feature is available, it needs to be implemented in RChain

      • IDEA to refactor existing listen for data on name to serve this purpose since it’s pretty close do delivering the functionality

  • Current architecture requires you to have nodes that look at the state (not validating nodes).

    • Read only nodes do this at no cost to watch. Cost is to operate the node.

  • IDEA some sort of channel where everything I send on the channel would return the results and deploy response. A function call.

Does end user need to enlist validator services?

  • Validators are incentivized to take deploys because deploys to collect transaction fees.

  • pokt.network is building some infrastructure around this.

    • JO: I met someone at SFBW. Their architecture is nicely decentralized but provides a service equivalent to Infura. Relationship was via Patrick, so I’m not sure of the status.

      • Ned to check

Not critical: gRPC call to shutdown node?

  • Would be nice for node-operator tools

  • Nice for npm run fresh

  • Is it possible to expose a deploy service without exposing the shutdown service?

Support binary files as part of deployments

Reference idea

  • Need a reference for gRPC calls and a description of what they do

    • IDEA take .proto file and publish as HTML

      • CONCERN .proto file is not particularly readable. Publishing this for dApp developers with refinements would be helpful.

      • EXAMPLE listen for data response needs to be parsed, and it’s unclear how to parse based on available documentation

      • RECOMMENDATION collect a list of what people want to do, to inform the documentation created

      • MVP a list of available gRPC calls in HTML with examples

EVAL

  • Needs for rchain.cloud

    • Use case - we want to deploy a contract and get a return of the evaluation via 1 gRPC call

    • Needs

      • Storage content

      • STDOUT via gRPC call

        • STDOUT is for printing not a gRPC call

      • What the node evaluated (send back what was sent) - used for debugging

  • Discussion to confirm EVAL operates separately from Casper

Questions for later

  • How do you ask questions of the blockchain?

    • Listen for data at name

    • Spelunking through the blockchain

    • If you want to ask the current value of data in a wallet, how can you it if it requires Rholang?

Next steps

  • Decision to meet again on Nov. 16 at 16:00 UTC. Dan Connolly to host and facilitate.

  • Everyone, please add to this document use cases and questions you’d like to discuss tomorrow.

...

Decisions