wallet: offline keyset-fee accessor for the precheck (upstream gonuts API) — follow-up to #525
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 28/100
Research direction
Start by reading tollwallet.mintKeysetFees and the loadWalletMints flow, then inspect the upstream gonuts wallet state and its wallet/storage.BoltDB.GetKeysets() accessor. The issue proposes an exported Wallet.MintKeysetFees(mintURL) API and re-pointing the precheck to it; done means the precheck can read cached keyset fees offline and no longer uses the network path.
Written by the indexing model from the issue text.
Description
Follow-up to #525 (now bounded in-repo by the precheck budget): the strictly-better long-term fix is reading the cached keyset fees from the wallet's local bolt DB instead of the network — the data is already there (kept warm by loadWalletMints; gonuts' internal feesForProofs uses exactly this in-memory state), and it would make the precheck offline-capable with no budget tuning.
What's missing: gonuts-tollgate exposes no accessor for a mint's keyset state (walletMint.activeKeyset/inactiveKeysets are unexported; wallet/storage.BoltDB.GetKeysets() exists but the wallet's live handle can't be safely re-opened read-only alongside). Needs: an exported Wallet.MintKeysetFees(mintURL) map[string]uint (or equivalent) upstream, then re-point tollwallet.mintKeysetFees at it and drop the network path from the precheck. Also worth revisiting upstream: keyset fetches probably don't want the full 5-attempt retry ladder on the hot payment path (issue #525's candidate 3).
- Dominant language
- Go
- Stars
- 12
- Forks
- 14
- Avg merge
- 1d 5h
- Merged PRs (30d)
- 220
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from OpenTollGate/tollgate-module-basic-go
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
OpenTollGate/tollgate-module-basic-go#833 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
OpenTollGate/tollgate-module-basic-go#822 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
OpenTollGate/tollgate-module-basic-go#813 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
OpenTollGate/tollgate-module-basic-go#804 ·
Maintainers usually reply within 1 day
-
go-battery needs an ndsctl on PATH: TestPurchaseSessionGuardHoldsThroughTheOutcomeUnknownWindow fails on bare hosts (passes with stub)Possibly taken @Amperstrand claimed this 1 day ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
OpenTollGate/tollgate-module-basic-go#726 · 2 comments ·
Maintainers usually reply within 1 day
All issues in OpenTollGate/tollgate-module-basic-go
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
siyuan-note/siyuan#20353 ·
Maintainers usually reply within 1 day
-
attributes-natural-language "en-US" is rejected by PAPPL >= 1.4.12 printers (RFC 8011 requires lowercase)Possibly taken @ChrisEdgington claimed this today. Open
Difficulty 1/5 Under an hour Newbie friendliness 84/100
OpenPrinting/ipp-usb#140 ·
-
Discriminator mapping keys are listed in a random orderPossibly taken @reuvenharrison claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Idle compaction monitors LIST the replica every tick when the newest destination file spans more than one TXIDPossibly taken @pishuv claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
benbjohnson/litestream#1563 ·
Maintainers usually reply within 2 days
-
triage needed
Difficulty 1/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 2 days