lightninglabs / lightninglabs/taproot-assets

[feature]: UniverseRPC `ACK_ASSET` Server-Streaming RPC

Open
#833 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Go
Stars
525
Forks
150
Avg merge
2d 15h
Merged PRs (30d)
31

Description

Is your feature request related to a problem? Please describe.
A universe can regularly sync remote federations via global configuration however a client must poll to learn of issuance or transfer updates. More specifically, I would like to proactively mitigate the possibility that user is searching for an asset my node's universe is not aware of.

Describe the solution you'd like
I would like to have server streaming RPCs to be notified when a new asset is first acknowledged by any universe in the maintained federation, being updated with taprpc.GenesisInfo[]. A few cases that would trigger this notification would be:

(1) the issuance event of a new asset
(2) a federation member syncing with a new universe

Describe alternatives you've considered
Polling my universe at some interval greater than the interval the universe is globally configured to sync with federation members, checking for asset_id's that are foreign from the perspective of a client's database. This yields largely wasted attempts.

Additional context
I understand the volume risk of notifications that could be accompanied with such a feature, but the goal is simply to be aware of any asset a user would have interest in... Would greatly appreciate other thoughts, concerns, and approaches!

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names the UniverseRPC ACK_ASSET server-streaming RPC and the taprpc.GenesisInfo[] notification payload, but no files or tests. Start by locating the UniverseRPC definitions and existing asset-sync notifications, then determine how issuance and federation-sync events should produce acknowledgements. Done means clients can receive each newly acknowledged asset without polling, with coverage for both described triggers.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
api, backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.