Skip to content

Conversation

@jtobin
Copy link
Member

@jtobin jtobin commented Dec 3, 2025

Updates the listings for the required lnd and Go versions, and makes a mild aesthetic pass over the text more generally.

Updates the listings for the required lnd and Go versions, and makes a
mild aesthetic pass over the text more generally.
@gemini-code-assist
Copy link

Summary of Changes

Hello @jtobin, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request focuses on maintaining the README.md file by updating critical version requirements for lnd and Go, ensuring users have the most current information for setting up and running Taproot Assets. Additionally, it includes a general aesthetic pass to enhance readability and consistency throughout the document, making it easier for new and existing users to navigate.

Highlights

  • LND Version Update: The minimum required LND version for Taproot Assets has been updated from v0.16.2-beta to v0.20.0-beta.
  • Go Version Update: The minimum required Go version for compiling Taproot Assets from source has been updated from 1.19 to 1.24.
  • README Readability and Consistency: Various formatting and stylistic improvements have been applied throughout the README, including consistent capitalization for section headers, standardizing gRPC and lnd mentions, and enhancing overall readability.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the required versions for lnd and Go in the README.md and improves its overall formatting and readability. The changes are mostly good, but I have a few suggestions to ensure the documentation remains accurate and complete. Specifically, I've pointed out a potential issue with the git clone command, the removal of some useful information about mainnet compatibility, and a section heading that could be more descriptive.

Comment on lines 126 to -128
```

Add multiple universes to your local federation to always stay up to date. You can also use the universe to query existing assets and their metadata. You may also configure your tapd instance to listen to incoming requests with `--rpclisten 0.0.0.0:10029` to run your own universe.
Add multiple universes to your local federation to always stay up
to date. You can also use the universe to query existing assets and
their metadata. You may also configure your tapd instance to listen
to incoming requests with `--rpclisten 0.0.0.0:10029` to run your own
universe.

```shell
tapcli universe federation add --universe_host testnet.universe.lightning.finance
tapcli universe roots
$ tapcli universe federation add \
--universe_host testnet.universe.lightning.finance
$ tapcli universe roots
```

Once you have obtained the necessary proofs and asset IDs, you can generate a Taproot Asset address for a specific asset and amount.
Once you have obtained the necessary proofs and asset IDs, you can
generate a Taproot Asset address for a specific asset and amount.

```shell
tapcli addrs new --asset_id bab08407[...]129bf6d0 --amt 21
$ tapcli addrs new --asset_id bab08407[...]129bf6d0 --amt 21
```

The sender can now fulfill the request by initiating the transfer.
The sender can now fulfill the request by initiating the transfer:

```shell
tapcli assets send --addr taptb1q[...]tywpre3a
$ tapcli assets send --addr taptb1q[...]tywpre3a
```
## Development

### API

Taproot Assets exposes a GRPC (port 10029) and a REST (port 8089) API. Connections are encrypted with TLS and authenticated using macaroons. [The API is documented here](https://lightning.engineering/api-docs/api/taproot-assets/). Further guides [can be found here](https://docs.lightning.engineering/lightning-network-tools/taproot-assets).
Taproot Assets exposes a gRPC (port 10029) and a REST
(port 8089) API. Connections are encrypted with TLS and
authenticated using macaroons. The API is documented
[here](https://lightning.engineering/api-docs/api/taproot-assets/), and
further guides can be found
[here](https://docs.lightning.engineering/lightning-network-tools/taproot-assets).

### Mainnet

Starting with the release of version `v0.3.0` the daemon does support the
Bitcoin `mainnet`.
`tapd` has supported mainnet since version `v0.3.0`.

**IMPORTANT NOTE**: To avoid loss of funds, it's imperative that you read the
[Operational Safety Guidelines](docs/safety.md) before using `tapd` on
`mainnet`!
mainnet!

The daemon is still in `alpha` state, which means there can still be bugs and
not all desired data safety and backup mechanisms have been implemented yet.
Releasing on `mainnet` mainly signals that there will be no breaking changes in
the future and that assets minted with `v0.3.0` will be compatible with later
versions.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This paragraph explaining the implications of releasing on mainnet (no breaking changes, forward compatibility) seems very useful for users. This information provides important context about asset compatibility across versions and gives confidence to users minting assets. Was its removal intentional? If not, I'd recommend re-adding it.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed that sentence as it seemed redundant to me. "We support mainnet" seems sufficient.

**WITHOUT BACKUP BEFORE DELETION, FUNDS ARE DESTROYED**.

## RFQ, asset decimal display, unit precision and price oracle
## RFQ and Price Oracle System

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The new heading RFQ and Price Oracle System is less descriptive than the original. The linked document docs/rfq-and-decimal-display.md also covers "asset decimal display" and "unit precision" in detail. To avoid confusion and accurately reflect the content, consider using a more comprehensive title.

Suggested change
## RFQ and Price Oracle System
## RFQ, Asset Precision, and Price Oracle System

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could go either way, just wanted to shorten it a bit.

@coveralls
Copy link

coveralls commented Dec 3, 2025

Pull Request Test Coverage Report for Build 19894659504

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • 8282 unchanged lines in 125 files lost coverage.
  • Overall coverage decreased (-0.01%) to 56.597%

Files with Coverage Reduction New Missed Lines %
authmailbox/client.go 2 66.67%
commitment/proof.go 2 87.29%
fn/retry.go 2 92.5%
tapdb/interfaces.go 2 85.0%
tapdb/sqlc/transfers.sql.go 2 82.65%
itest/assertions.go 3 87.42%
itest/multisig.go 3 97.94%
universe/interface.go 3 74.21%
commitment/encoding.go 4 68.75%
mssmt/encoding.go 4 76.67%
Totals Coverage Status
Change from base Build 19823124678: -0.01%
Covered Lines: 64815
Relevant Lines: 114520

💛 - Coveralls

Copy link
Member

@Roasbeef Roasbeef left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🧩

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: 🆕 New

Development

Successfully merging this pull request may close these issues.

3 participants