Giter Club home page Giter Club logo

Comments (5)

St333p avatar St333p commented on July 23, 2024 2

Updates from 20.12.09 call:

  • asset identifiers will be encoded in bech32 from the next lnpbp core library release, so the related issue will be solved rather automatically at that point
  • nodeid is currently not exposed by the Noise-related part of lnpbp core library API, this will be done with the next release (either 0.2.[1+] or 0.3)

As a result, the best approach is probably to close this issue with a PR that addresses the lesser issue that I already solved and open a new one to just keep track of the missing points and point to the right info until lnpbp core library is released.

from lnp-node.

St333p avatar St333p commented on July 23, 2024 1

bugs 1-4 were solved by #32
bug 5 is waiting for an update in rust-lnpbp and has a dedicated issue #33
bug 6-7 are linked to each other and are waiting for an update in rust-lnpbp, here is the dedicated issue #34

from lnp-node.

St333p avatar St333p commented on July 23, 2024

I figured that asset transfer fails because of endianess inconsistency between input and output data, so I'll update it in the issue description.
In fact:

  • After step 6, the cli logs: adding 100 of 883926d7f25d99298a1c7b4fbd019df21d1d24a2bbfb63adacbc115f6b48d627 to balance and the same asset_id is shown in the asset field in the output of lnp-cli info <temp_channel_id>.
  • This call fails: lnp1-cli transfer --asset 883926d7f25d99298a1c7b4fbd019df21d1d24a2bbfb63adacbc115f6b48d627 <temp_channel_id> 10
  • This call succeeds: lnp1-cli transfer --asset 27d6486b5f11bcacad63fbbba2241d1df29d01bd4f7b1c8a29995df2d7263988 <temp_channel_id> 10

from lnp-node.

St333p avatar St333p commented on July 23, 2024

I'm stuggling a bit with the 7th point. From what i can see, remote_id is never set in src/bin/peerd.rs for the peer that receives the connection and in fact from the pov of A, a lnp-cli info <peer> returns an empty list for remote_id. However, it's still not clear to me how A gets to show its own nodeid in the list of peers, my best bet points at how id is assigned at line 203 in peerd.rs (b901fb0), since it contains local_node as nodeid.
I have the feeling that at that point in the workflow the remote nodeid is not yet available and it should be set later on, but I can't figure out where to get it from nor where it should be set in order to solve the issue. Any help on this is very well appreciated.

EDIT: after another debugging session I figured that initiator's nodeid is available at the end of the noise protocol to the receiver. I still don't understand where precisely in code the noise protocol gets executed between peers and so how to retrieve initiator nodeid from that.

from lnp-node.

St333p avatar St333p commented on July 23, 2024

As for asset identifiers, I have the feeling that the cleanest possible solution would be to switch everything over to bech32 encoding, also for consistency with rgb-node. This could be obtained by having the rgb-node Asset api return a bech32 encoded string or by implementing a the conversion between hex and bech32 encodings in lnpbp::bp::chain::AssetId. Am I right?

from lnp-node.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.