Skip to content

feat: add wallet-scoped activity tag reads #136

Description

@jvsena42

Found while wiring hardware-wallet tag backup on Android (synonymdev/bitkit-android#1163, follow-up to #113). Verified against v0.5.5.

Problem

get_all_activities_tags() takes no wallet id, and the only scoped getter is get_tags(wallet_id, activity_id) for a single activity. There is no way to ask for "tags for wallet X", so apps fetch everything and filter in app code:

coreService.activity.getAllActivitiesTags()
    .filter { it.walletId == WalletScope.default }

That single line is the app's entire backup-scoping policy. It has already been added and removed once in Android, each time silently changing which wallet scopes leave the device — which matters, because these records go to a remote backup server.

Requested change

Expose get_activities_tags(wallet_id: Option<String>), where None returns every scope, so scoping becomes an explicit argument visible in review rather than an app-side filter. The same argument applies to get_all_pre_activity_metadata().

Acceptance criteria

  • Tags can be read for a single wallet scope and for all scopes, without app-side filtering.
  • The existing unscoped behaviour remains available.
  • Tests cover scoped and unscoped reads, including a hardware trezor:{hash} scope.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions