Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
be8e04f
checkpoint
Mar 3, 2026
e308ca0
checkpoint
Mar 3, 2026
3d3e61f
checkpoint
Mar 4, 2026
c18a02e
checkpoint
Mar 4, 2026
1d49c2d
checkpoint
Mar 4, 2026
adb04d6
checkpoint
Mar 4, 2026
556a77d
checkpoint
Mar 4, 2026
68a6617
checkpoint
Mar 4, 2026
2f84da1
checkpoint
Mar 4, 2026
27e094b
checkpoint
Mar 4, 2026
e20ff2d
checkpoint
Mar 4, 2026
973f7c3
changelog: add v3.0.0 (multi-path HD, UTXO spend, FIPS Docker, tx lis…
Mar 4, 2026
5c7ba96
chore: update .gitignore for unlinked/local files (.cursor, mcps)
Mar 4, 2026
d238544
checkpoint
Mar 4, 2026
ac92ab5
checkpoint
Mar 4, 2026
5443ed2
ci(bbmtlib): use Go 1.25 to match go.mod, fix go mod tidy check
Mar 4, 2026
287740a
style(bbmtlib): gofmt mpc_nostr.go (blank line before NostrMpcSendBTC…
Mar 4, 2026
ff93926
checkpoint
Mar 6, 2026
2ef8a59
fix: eliminate FetchUTXODetails from MPC signing loops (mpc + nostr)
Mar 6, 2026
6c9bf5e
optimization-refactor
Mar 6, 2026
58b1a8d
feat(v3.0.0): HTTP cache layer, balance stats endpoint, pending chip,…
Mar 6, 2026
48475ce
script-checks
Mar 6, 2026
b87c92b
fix(fips-android): use #!/bin/bash so sudo doesn't fall back to /bin/sh
Mar 6, 2026
62538cf
build-aar-fips
Mar 6, 2026
7934eb6
script-checks
Mar 6, 2026
03d6f95
go-mod-checks
Mar 6, 2026
7e2063c
fix(nostr-transport): harden multi-relay resilience in MPC session tr…
Mar 7, 2026
a19ebe6
lib-update
Mar 7, 2026
b8940eb
build-aar-fips
Mar 7, 2026
dff0554
index-restoration-checks
Mar 7, 2026
280888d
hd-wallet-refresh
Mar 7, 2026
e5d47f7
ui-send-btc-in-out-details
Mar 7, 2026
c50fbf3
wallet-data-checks
Mar 7, 2026
4bf9c1b
wallet-data-checks
Mar 7, 2026
c30360f
wallet-settings-reindexing
Mar 7, 2026
67cc025
wallet-settings-indexing
Mar 7, 2026
ca7ad13
tx-on-demand-broadcast
Mar 8, 2026
84172e4
qr-shortcut-multipath
Mar 8, 2026
272140f
v3.0.0-completion
Mar 8, 2026
2c7a031
build-aar-fips
Mar 8, 2026
b45b6d3
fix: gofmt formatting in cancel.go and nostr_cancel.go
Mar 8, 2026
6ac6815
db-switch-checkpoint
Mar 9, 2026
6c6f118
checkpoint-db-switch
Mar 9, 2026
5c64e38
checkpoint-db-switch
Mar 9, 2026
77935f0
checkpoint-cleanups
Mar 9, 2026
d56f30e
checkpoint-cleanups
Mar 9, 2026
84f89c6
hd-indexer-optimizations
Mar 9, 2026
473fe96
changelog: add v3.0.1 — SQLite DB-first architecture, atomic reindex,…
Mar 9, 2026
71d9dd3
wallet-home-cleanup
Mar 9, 2026
23ab819
checkpoint-cleanups
Mar 11, 2026
485f342
v3.0.1: atomic API queue, 429 retry, progress indicators, UX fixes
Mar 13, 2026
eb55fea
bump version to 3.0.2 (build 52) across package.json, Android, iOS, C…
Mar 13, 2026
a1a9276
fix tx sync: forward-pass discovery, confirmation overlay, HD re-scan
Mar 14, 2026
f916c99
cache-checks
Mar 14, 2026
76abadc
checkpoint
Mar 14, 2026
b9d84a0
release v3.0.3 (build 53): fix cross-device tx sync, full wallet reco…
Mar 14, 2026
0ec5bdc
checkpoint
Mar 14, 2026
5234159
checkpoint
Mar 14, 2026
f8962d4
release v3.0.4 (build 54): DB-first architecture, TS fee estimation, …
Mar 14, 2026
845c1b6
apis-checks
Mar 15, 2026
79c3182
checkpoint
Mar 15, 2026
5e2afe1
Release v3.0.5 (build 55): lightweight tap-to-refresh, active-set syn…
Mar 15, 2026
7ca9db3
checkpoint
Mar 15, 2026
80dd748
checkpoint
Mar 15, 2026
8dc522f
checkpoint
Mar 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/bbmtlib-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.24.2'
go-version: '1.25'
cache-dependency-path: BBMTLib/go.sum

- name: Verify Go version
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,10 @@ build.log
# Local gradle properties with secrets (never commit)
android/gradle.properties.local

# IDE - Cursor / project-local
.cursor/
mcps/

# IDE - VSCode
.vscode/
*.code-workspace
Expand Down
11 changes: 11 additions & 0 deletions App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ import {
useSafeAreaInsets,
} from 'react-native-safe-area-context';
import {initializeHaptics} from './utils';
import database from './services/Database';
import {runMigrationIfNeeded} from './services/LocalCacheMigration';
import ErrorBoundary from './components/ErrorBoundary';
import {
Alert,
Expand Down Expand Up @@ -517,6 +519,15 @@ const App = () => {
useEffect(() => {
initializeHaptics();
const checkWallet = async () => {
// Open SQLite database and run one-time LocalCache → SQLite migration.
// Wrapped in try/catch so a DB failure never blocks app startup.
try {
await database.open();
dbg('App: SQLite database ready');
await runMigrationIfNeeded();
} catch (dbErr) {
dbg('App: Database init error (non-fatal):', dbErr);
}
try {
const keyshare = await EncryptedStorage.getItem('keyshare');
dbg('initializeApp keyshare found', !!keyshare);
Expand Down
2 changes: 1 addition & 1 deletion BBMTLib/Dockerfile.fips
Original file line number Diff line number Diff line change
Expand Up @@ -65,4 +65,4 @@ RUN go install golang.org/x/mobile/cmd/gomobile@v0.0.0-20250408133729-978277e7ea
RUN gomobile init

WORKDIR /workspace
# This stage has no CMD – we use it only for docker cp / export
# This stage has no CMD – we use it only for docker cp / export
21 changes: 12 additions & 9 deletions BBMTLib/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,12 @@ YELLOW="\033[33m"
info() { echo -e "${BOLD}${GREEN}==>${RESET} ${BOLD}$1${RESET}"; }
warn() { echo -e "${BOLD}${YELLOW}Warning:${RESET} $1"; }

info "Starting BoldWallet TSS gomobile build (FIPS-aware, Go 1.25+)"
info "Starting BoldWallet TSS gomobile build (FIPS-aware, Go 1.24+)"

# --- 1. Environment Checks ---
# Note: Go 1.25's tagged-pointer runtime can trigger "fatal error: taggedPointerPack"
# in some container/virtualized environments. For FIPS Android build, use
# fips-android.sh (Docker) which uses Go 1.24.x, or install Go 1.24.x on the host.

echo "Go environment:"
go version
Expand Down Expand Up @@ -107,10 +110,13 @@ export GOFLAGS="-mod=mod"

# Run Bind
# Note: -androidapi 21 is the standard min version
gomobile bind -v -target=android -androidapi 21 -o tss.aar github.com/BoldBitcoinWallet/BBMTLib/tss
# Android 15 requires 16 KB page size support. Go 1.23+ supports it, but we explicitly
# set the max-page-size for the linker to ensure libgojni.so is compliant.
gomobile bind -v -target=android -androidapi 21 -ldflags="-extldflags=-Wl,-z,max-page-size=16384" -o tss.aar github.com/BoldBitcoinWallet/BBMTLib/tss

# Copy Artifacts
if [[ -d "../android/app/libs" ]]; then
# Run go mod tidy again at the end to ensure go.mod/go.sum are clean
info "Copying Android artifacts..."
cp -v tss.aar ../android/app/libs/tss.aar || warn "Copy tss.aar failed"
echo "✓ tss.aar copied to ../android/app/libs/tss.aar"
Expand Down Expand Up @@ -148,10 +154,7 @@ else
info "Not running on macOS → Skipping iOS/macOS targets"
fi

# --- 5. Cleanup ---

info "Finalizing..."
# Run go mod tidy again at the end to ensure go.mod/go.sum are clean
go mod tidy

info "Build complete!"
info "Tidying dependencies..."
go mod tidy || warn "go mod tidy failed"

info "Build complete!"
8 changes: 7 additions & 1 deletion BBMTLib/fips-android.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
#!/bin/bash
set -euo pipefail

# Always run from the BBMTLib directory regardless of where the script is called from.
cd "$(dirname "$0")"

# Dockerfile.fips
docker buildx build --platform linux/amd64 -f Dockerfile.fips -t boldwallet-builder:fips .
docker buildx build --load --platform linux/amd64 -f Dockerfile.fips -t boldwallet-builder:fips .

# Generate lib
docker run --rm \
Expand Down
Loading
Loading