joinmarket-webui / joinmarket-webui/jam

feat: support smart/background scan on wallet import

Open
#1,336 2 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
TypeScript
Stars
330
Forks
122
Avg merge
2d 17h
Merged PRs (30d)
17

Description

joinmarket-ng has following import related options:
```
WALLET__SMART_SCAN: true | false
WALLET__BACKGROUND_FULL_SCAN: true | false
WALLET__SCAN_LOOKBACK_BLOCKS:
```

The current flow assumes these options are turned off and starts a rescan manually.
If these vars are enabled, the manual rescan should be skipped.

Important note: The recover endpoint does not expose these vars - see [RecoverWalletRequest](https://github.com/joinmarket-ng/joinmarket-ng/blob/main/jmwalletd/src/jmwalletd/models.py#L70). When importing, no valid authentication token is present, so the config vars cannot be updated.
Either extend the request body to contain these values, or just skip the manual import in case `SMART_SCAN` or `BACKGROUND_FULL_SCAN` is `true`.

Contributor guide

Open the contributing guide

Research direction

Start with the wallet import flow and the recover endpoint, then inspect RecoverWalletRequest in jmwalletd/jmwalletd/models.py. Determine how the three scan options can be supplied or detected during import, and verify that manual rescanning is skipped when SMART_SCAN or BACKGROUND_FULL_SCAN is enabled.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, typescript
Domain
api, backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.