github we-promise/sure v0.7.3
Sure v0.7.3 - Insights, property/rental valuations, and (experimental) macOS app

4 hours ago

The headline addition in v0.7.3 is the new Insights feed: a proactive financial-intelligence dashboard channel designed to help people notice meaningful changes and opportunities in their finances. It ships behind a Preview Features toggle in /settings/preferences, so it can be explored deliberately while the experience continues to mature, and because it requires LLM tokens to function.

This release also expands account and market-data connectivity across several regions and asset types:

  • Native Questrade brokerage support
  • Wise integration
  • Trading 212 investment syncing
  • Redbark support for Australian bank syncing
  • RentCast and Realie property data and valuations (US)
  • Frankfurter exchange rates
  • SnapTrade authentication upgraded to OAuth, plus account setup and reconnection fixes

Financial views are richer too. A new Money In / Out dashboard widget shows monthly cash flow, the net-worth chart adds a breakdown tooltip, investment accounts gain a Gains / ROI view, and transfers can now include bank charges. Searchable merchant merging, per-account automatic-categorization controls, sync cancellation, and improved pending-transaction handling make everyday maintenance more predictable.

v0.7.3 also introduces an experimental (Tauri wrapper) Sure macOS app, extending the desktop experience alongside continued mobile and web improvements. You will need to compile/build it locally though.

Reliability and security received a broad pass across balances, imports, provider syncs, OAuth redirects, OIDC discovery, API access scoping, background jobs, and upgrade migrations. The release also expands and improves localization across Russian, Turkish, Polish, Italian, and French.

Contributions spann new integrations, product improvements, performance work, security hardening, and many provider-specific fixes. Thank you to everyone who contributed, tested release candidates, and reported issues.

Month Issues opened Release activity GHCR image pulls
2025-11 27 v0.6.5 — 101 PRs (1 hotfix / 7 PRs) 6,514
2025-12 22 v0.6.6 — 55 PRs (1 hotfix / 2 PRs) 7,794
2026-01 56 v0.6.7 — 162 PRs 43,250
2026-02 48 v0.6.8 — 113 PRs 68,962
2026-03 73 v0.6.9 — 92 PRs 132,863
2026-04 73 v0.7.0 — 129 PRs (3 hotfixes / 8 PRs) 126,319
2026-05 105 v0.7.1 — 206 PRs (1 hotfix / 3 PRs) 120,568
2026-06 137 v0.7.2 — 233 PRs 139,189
2026-07 70 v0.7.3 — 111 PRs ?

Mobile Debug Builds

This release includes debug builds of the mobile applications. Download from the Assets area below.

  • Android APK: Debug build for testing on Android devices
  • iOS Build: Unsigned iOS build (requires code signing for installation)

Note: These are debug builds intended for testing purposes. For production use, please build from source with proper signing credentials.

What's Changed

  • feat (Transfer fees) : Add Bank Charges for Transfers by @DataEnginr in #2183
  • Fix reverse balance opening boundary adjustments by @BeastOrange in #2502
  • fix(trend): keep percent sign consistent with direction for negative/zero base by @glorydavid03023 in #2580
  • Fix two crashes in rake demo_data:default by @Holdner in #2586
  • fix: only mark overlapping statement periods as duplicate by @MaxenceChx in #2569
  • Fix OIDC group role mapping claims by @BeastOrange in #2503
  • Stop backfill_encryption double-encoding json/jsonb columns by @elvum in #2615
  • Don't persist zero balances when a provider balance fetch fails by @elvum in #2617
  • Russian language support added by @cuppabot in #2005
  • fix(pwa): harden service worker render to explicitly use js format by @sentry[bot] in #2629
  • fix(reports): hide tax-advantaged transactions in breakdown by @BeastOrange in #2549
  • fix(invitations): allow re-inviting after an unaccepted invite expires by @minion1227 in #2543
  • perf(test): use MIN_COST bcrypt digests in user fixtures (~230ms saved per sign_in) by @jjmata in #2551
  • feat(provider): add native Questrade brokerage provider integration by @jestinjoshi in #2534
  • perf: make provider retry backoff sleeps stubbable (SimpleFIN suite 23.5s → ~1s) by @jjmata in #2552
  • chore(deps): bump css_parser from 1.22.0 to 3.0.0 by @dependabot[bot] in #2662
  • Fix income trades (interest/dividend) wiping security holdings to $0 by @StalkerSea in #2673
  • Share family accounts with invited members on every sign-up path by @luckyPipewrench in #2650
  • feat(insights): proactive financial intelligence feed by @jjmata in #2550
  • fix(impersonation): guard Sidekiq jobs link by @sure-admin in #2678
  • chore(deps): bump jwt from 2.10.2 to 2.10.3 by @dependabot[bot] in #2677
  • feat(provider): add Frankfurter as an exchange-rate provider by @jestinjoshi in #2640
  • fix(imports): add horizontal scroll to CSV sample data preview by @jestinjoshi in #2642
  • chore: example env variables from #894 by @dineiar in #2675
  • feat(bank-sync): Wise integration by @xBlaz3kx in #2433
  • fix(sync): guard finalization against externally-staled syncs by @gariasf in #2680
  • Update LLM token cost estimates and cost-info locales by @jjmata in #2690
  • Fix(mobile): Convert chat timestamps to local timezone on deserialization by @felixmuinde in #2701
  • fix(coinbase): qualify HoldingsProcessor constant reference by @pro3958 in #2702
  • fix(provider): resolve Tiingo security currency from countryCode by @jestinjoshi in #2692
  • fix(sync): resolve N+1 query in child finalization by @sentry[bot] in #2693
  • Fix keyboard navigation in DS::Select dropdowns by @rubenRP in #2689
  • Complete missing French translations and fix locale quality issues by @Holdner in #2697
  • Fix enable banking not respecting pending transactions setting by @OtterBoops in #2686
  • feat(sync): family-facing cancellation for syncs, imports, and exports by @gariasf in #2685
  • feat(sidekiq): mount Web UI in production behind super-admin sessions by @gariasf in #2683
  • perf(exchange_rate): batch-fetch rates to fix N+1 query by @sentry[bot] in #2676
  • docs: clarify local LLM context window tuning by @sure-admin in #2661
  • feat: Move import merchant button in sub menu by @alessiocappa in #2637
  • Show full dates in the categorize wizard by @elvum in #2633
  • Add per-account toggle to disable automatic transaction categorization by @mike-lloyd03 in #2636
  • Add Italian translations for various views and functionalities by @fabietto01 in #2625
  • fix(import): strip non-breaking-space thousands separators in sanitize_number by @ultrahighsuper in #2538
  • fix(i18n): use existing localized labels in web UI by @chkfail in #2501
  • Fix automated version bumps and advance prerelease version by @jjmata in #2704
  • fix(enable-banking): handle unavailable and overdraft balances by @carloslindo in #2578
  • fix(lunchflow): prune orphaned accounts deleted upstream (#1861) by @Lobster-0429 in #1886
  • Add send_email_notification rule action by @kianrafiee in #2527
  • Use badge variant for category selects in transfer + bulk-edit views by @elvum in #2645
  • Fix statement Turbo frame navigation and split view/edit actions (#2614) by @shrestha-bishal in #2695
  • Fix: BudgetCategoriesController#show NoMethodError for missing budget by @sentry[bot] in #2709
  • fix(wise): redirect after token submission instead of rendering inline by @xBlaz3kx in #2730
  • feat(i18n): complete Turkish (tr) locale coverage and Türkiye formatting by @erkdgn in #2737
  • feat(settings): super-admin background jobs console by @gariasf in #2682
  • fix(i18n): resolve close button label in goals dialog across all locales by @erkdgn in #2741
  • fix(settings): require admin for advanced settings controllers by @andrewb-nz in #2403
  • feat(sync): add toggle to parse Enable Banking CC balance as available credit by @mxafi in #2512
  • fix: use REDIS_URL in ApiRateLimiter for hosted API requests by @RealDiligent in #2639
  • Fix N+1 queries on categories index by batching lookups and removing … by @bittensorrider in #2163
  • fix(snaptrade): don't double count cash-equivalent (money market) positions by @rickdgray in #2696
  • Add searchable merge merchants by @guicattani in #2624
  • fix: block unsafe OAuth redirect URIs in dynamic registration by @RealDiligent in #2638
  • Fix automated version bumps and advance prerelease version by @jjmata in #2748
  • chore(deps): bump loofah from 2.25.1 to 2.25.2 by @dependabot[bot] in #2749
  • Improve Yahoo Finance reliability and Colombian listing support by @camilo-agudelo in #2738
  • chore(deps): bump rails-html-sanitizer from 1.7.0 to 1.7.1 by @dependabot[bot] in #2750
  • chore(deps): bump websocket-driver from 0.8.1 to 0.8.2 by @dependabot[bot] in #2751
  • feat(snaptrade): replace device-flow OAuth with authorization-code + PKCE flow by @maxjb-xyz in #2747
  • Add missing Polish translations to reach 100% coverage by @toczke in #2780
  • Fix preview cleanup over-firing on PR close by @sure-admin in #2784
  • Perf/accounts controller index optimization by @bittensorrider in #1926
  • fix(api): scope holdings API to accessible accounts by @pro3958 in #2706
  • Add RentCast & Realie integration for automatic property data and valuations by @kianrafiee in #2727
  • Add support for trading212 integration in investments sync by @jdcdp in #2513
  • Feature/dashboard Add "Money In / Out" dashboard widget with monthly bar chart by @Holdner in #2594
  • feat(jobs): reap imports and exports stuck by lost background jobs by @gariasf in #2681
  • feat(reports): add net worth chart with breakdown tooltip by @kianrafiee in #2716
  • Bump version to next iteration after v0.7.3-alpha.5 release by @github-actions[bot] in #2791
  • fix(snaptrade): sign bare TRANSFER activities by provider direction (#2756) by @erkdgn in #2792
  • fix(dashboard): add hover state to section header controls by @gariasf in #2798
  • fix(akahu): pull full history on initial Akahu sync by @pro3958 in #2779
  • feat(accounts): add Gains / ROI chart view for investment accounts by @aguyonp in #2660
  • fix(merchants): preserve user-selected merchant colors on save (#2760) by @erkdgn in #2802
  • update transactions_controller by @bittensorrider in #1953
  • fix(indexa_capital): correct cash activity amount-sign convention (#2793) by @erkdgn in #2801
  • fix: prevent AddAmountToTransfers migration from aborting the upgrade on legacy transfer data by @RealDiligent in #2795
  • fix: omit SimpleFin pending param when pending transactions are disabled by @RealDiligent in #2796
  • fix(ai): prevent Anthropic chat crash on no-argument tool calls by @kai392 in #2755
  • feat(insights): gate the insights feed behind preview features by @jjmata in #2788
  • fix(settings): allow clearing an encrypted provider API key by @minion1227 in #2544
  • feat(redbark): add australian bank sync (redbark) by @oscargws in #2794
  • feat: Introduce macOS app v0.1.0 by @maxjb-xyz in #2762
  • chore(deps-dev): bump vite from 5.4.21 to 6.4.3 in /desktop by @dependabot[bot] in #2810

New Contributors

Full Changelog: v0.7.2...v0.7.3

Don't miss a new sure release

NewReleases is sending notifications on new releases.