Skip to content

Conversation

@gudnuf
Copy link
Collaborator

@gudnuf gudnuf commented Aug 19, 2025

closes #279

I made NUT-17 general so that it can easily be extended with new subscription kinds. For now I just defined the proof_state kind in NUT-07 and bolt11_mint_quote/bolt11_melt_quote in NUT-23. We will want the ability to add new kinds for things like new payment methods (ie. bolt12).

For the examples I decided to just leave the concrete examples showing bolt11 of proof states instead of trying to make a general example. The other thing I considered was removing examples from NUT-17 and include the specific examples in the corresponding NUTs, but that makes those NUTs unnecessarily long.

@gudnuf gudnuf self-assigned this Aug 19, 2025
@callebtc
Copy link
Contributor

we can add bolt12 since #259 is now merged

@gudnuf gudnuf force-pushed the gudnuf/abstract-nut-17 branch from 8a23d12 to 6345a5c Compare August 28, 2025 19:54
@gudnuf
Copy link
Collaborator Author

gudnuf commented Aug 28, 2025

we can add bolt12 since #259 is now merged

done

Copy link
Collaborator

@thesimplekid thesimplekid left a comment

Choose a reason for hiding this comment

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

Once open question I had on nut17 and don't think this address is how to handle the info endpoint. Currently the proof state is inside a specific method but a proof isn't tied to a method. Does proof state need to be included in each method?

"nuts": {
    "17": {
      "supported": [
        {
          "method": "bolt11",
          "unit": "sat",
          "commands": [
            "bolt11_mint_quote",
            "bolt11_melt_quote",
            "proof_state"
            ]
        },
      ]
    }
}

@gudnuf
Copy link
Collaborator Author

gudnuf commented Aug 31, 2025

Does proof state need to be included in each method?

I was thinking that too when doing this. It should be specified outside the methods.

Should we do that in this PR? Will require implementations to change so we should probably keep it in just the bolt11 method for compatibility.

Copy link
Collaborator

@thesimplekid thesimplekid left a comment

Choose a reason for hiding this comment

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

Lets do that separate since this requires no impl changes.

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.

Abstract NUT-17 subscription kinds to their respective NUTs

4 participants