Skip to content

Conversation

@hieblmi
Copy link
Collaborator

@hieblmi hieblmi commented Jul 16, 2025

No description provided.

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.

Summary of Changes

Hello @hieblmi, 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 a routine maintenance task: updating the project's Go module dependencies. The core change involves upgrading the lnd library to its v0.19.2-beta release, which necessitated corresponding updates to other related btcsuite and lightninglabs modules. A minor code adjustment was also required to align with an API change in one of the updated client libraries.

Highlights

  • Dependency Updates: I've updated the lnd dependency from v0.19.0-beta to v0.19.2-beta. This is the primary version bump in this pull request.
  • Related Module Bumps: Alongside the lnd update, I've also bumped several related Go modules, including github.com/btcsuite/btclog/v2, github.com/btcsuite/btcwallet, github.com/lightninglabs/lndclient, github.com/lightninglabs/taproot-assets, and github.com/lightninglabs/taproot-assets/taprpc to their latest compatible versions.
  • API Signature Adjustment: To accommodate changes in the updated lndclient library, I've modified the RegisterSpendNtfn function signature in instantout/reservation/actions_test.go and test/chainnotifier_mock.go to include an optional lndclient.NotifierOption parameter.
  • Indirect Dependency Removal: The github.com/go-errors/errors indirect dependency has been removed from go.mod and go.sum, indicating it's no longer required by the updated dependency tree.
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 in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

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 issue 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 is currently in preview and 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 to provide feedback.

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 lnd to v0.19.2-beta and other related dependencies. The code changes in the test files are to adapt to the new dependency versions. I've found one issue in a test mock where not all function arguments are passed to m.Called, which could cause issues with tests. Otherwise, the changes look good.

Comment on lines 189 to +192
func (m *MockChainNotifier) RegisterSpendNtfn(ctx context.Context,
outpoint *wire.OutPoint, pkScript []byte, heightHint int32) (
chan *chainntnfs.SpendDetail, chan error, error) {
outpoint *wire.OutPoint, pkScript []byte, heightHint int32,
option ...lndclient.NotifierOption) (chan *chainntnfs.SpendDetail,
chan error, error) {

Choose a reason for hiding this comment

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

high

The mock implementation of RegisterSpendNtfn is not passing all of its arguments to m.Called on line 194. The new option parameter and the existing outpoint parameter are missing. This will cause test expectations that specify these arguments to fail.

To ensure the mock works correctly, all arguments should be passed to m.Called(). I recommend updating the function body to pass all arguments.

Here's a suggested implementation for the function body:

	// Collect all arguments, including the variadic ones.
	allArgs := []interface{}{ctx, outpoint, pkScript, heightHint}
	for _, o := range option {
		allArgs = append(allArgs, o)
	}

	args := m.Called(allArgs...)
	return args.Get(0).(chan *chainntnfs.SpendDetail), args.Get(1).(chan error), args.Error(2)

@hieblmi
Copy link
Collaborator Author

hieblmi commented Jul 16, 2025

Closing in favor of #985

@hieblmi hieblmi closed this Jul 16, 2025
@hieblmi hieblmi deleted the update-lnd branch August 22, 2025 14:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant