1
0
Fork 0
mirror of https://github.com/maybe-finance/maybe.git synced 2025-08-09 07:25:19 +02:00
Commit graph

1275 commits

Author SHA1 Message Date
Cameron Roudebush
7e05681144 fixes: Merge request fixes
- Changing to the new syncable structure
- Fixing missing account error display
- Shuffling some code around
2025-05-18 09:40:59 -04:00
Cameron Roudebush
3f11e357c3 Merge remote-tracking branch 'origin/main' into simple-fin-integration 2025-05-18 08:57:46 -04:00
Cameron Roudebush
14067dd7b8 chore: DB migration update 2025-05-18 08:48:42 -04:00
Zach Gollwitzer
9f13b5bb83
Handle stale syncs (#2257)
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
* Handle stale syncs

* Use `visible` sync logic in sidebar groups
2025-05-17 18:28:21 -04:00
Zach Gollwitzer
10f255a9a9
Clarify backend data pipeline naming concepts (importers, processors, materializers, calculators, and syncers) (#2255)
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
* Rename MarketDataSyncer to MarketDataImporter

* Materializers

* Importers

* More reference replacements
2025-05-17 16:37:16 -04:00
Cameron Roudebush
9e9e2fa1e8 chore: Cleanup for PR
- Cleanup gitignore
- Fix transaction naming bug
2025-05-17 14:08:34 -04:00
Cameron Roudebush
29f46e53e9 fix(transaction): Correct problems with SimpleFIN transaction negative values 2025-05-17 12:20:43 -04:00
Cameron Roudebush
a4bbc22b4c fix(sync): Fixing various sync issues
- Fixing credit card charges being considered income
- Fixing family syncs not re-syncing SimpleFIN accounts
- Fixing considerations for "credit card" account types
2025-05-17 12:12:03 -04:00
Cameron Roudebush
bf4ee058ec fix: Correcting some issues from merging master 2025-05-17 11:43:40 -04:00
Cameron Roudebush
676c609725 Merge remote-tracking branch 'forked/main' into simple-fin-integration 2025-05-17 11:19:18 -04:00
Cameron Roudebush
e37f3f5580 chore: Remove sample fin 2025-05-17 11:16:02 -04:00
Cameron Roudebush
d78724b9a8 fix(simplefin): Disabled accounts are now included and hides transaction uploads 2025-05-17 11:14:48 -04:00
Cameron Roudebush
72c6840f5a fix(simplefin): Fix some querying issues and various rendering bugs
- Also adding some nice looking progress indicators for loading SimpleFIN data
2025-05-17 11:08:17 -04:00
Cameron Roudebush
8d22d46420 fix: Various account issues with balances 2025-05-16 17:16:52 -04:00
Cameron Roudebush
175d3dc753 fix: Adding a fix for accounts that are missing subtype information
- Updating to add look back days for transactions
2025-05-16 15:48:18 -04:00
Cameron Roudebush
7b983fecb8 feat(simplefin): Add rate limit
- You can now specify the rate limit so Maybe can't over do it with the backend calls
- Fix various file placements from the updates
- Adding an actual configuration class for SimpleFIN
2025-05-16 15:32:54 -04:00
Zach Gollwitzer
b8903d0980 Fix start date missing error in market data sync
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-16 14:40:52 -04:00
Zach Gollwitzer
35d1447494 Adjust Sentry missing price and rate to warning level 2025-05-16 14:25:35 -04:00
Zach Gollwitzer
6dc1d22672
Market data sync refinements (#2252)
* Exchange rate syncer implementation

* Security price syncer

* Fix issues with provider API

* Add back prod schedule

* Add back price and exchange rate syncs to account syncs

* Remove unused stock_exchanges table
2025-05-16 14:17:56 -04:00
Alex Hatzenbuhler
6917cecf33
Move to 3 decimal place precision for loans (#2245)
* Move to 3 decimal place precision for loans

* kick for tests

* unkick
2025-05-16 11:24:32 -04:00
Alex Hatzenbuhler
5efa8268f6
Attempt name override (#2244) 2025-05-16 11:23:57 -04:00
Zach Gollwitzer
9155e737b2 Capture broadcast error in Sentry
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-15 11:08:27 -04:00
Zach Gollwitzer
a565343102 Fix account group broadcast reference 2025-05-15 10:53:15 -04:00
Zach Gollwitzer
10dd9e061a
Improve account sync performance, handle concurrent market data syncing (#2236)
* PlaidConnectable concern

* Remove bad abstraction

* Put sync implementations in own concerns

* Sync strategies

* Move sync orchestration to Sync class

* Clean up sync class, add state machine

* Basic market data sync cron

* Fix price sync

* Improve sync window column names, add timestamps

* 30 day syncs by default

* Clean up market data methods

* Report high duplicate sync counts to Sentry

* Add sync states throughout app

* account tab session

* Persistent account tab selections

* Remove manual sleep

* Add migration to clear stale syncs on self hosted apps

* Tweak sync states

* Sync completion event broadcasts

* Fix timezones in tests

* Cleanup

* More cleanup

* Plaid item UI broadcasts for sync

* Fix account ID namespace conflict

* Sync broadcasters

* Smoother account sync refreshes

* Remove test sync delay
2025-05-15 10:19:56 -04:00
Taylor Brazelton
9793cc74f9
Typo fix for piece to place. (#2242) 2025-05-15 07:59:00 -04:00
Cameron Roudebush
d5acd4935a fix(render): Adjust turbo to not permanent the accounts as they now could show errors
- Also fixing some update status being wrong
2025-05-14 20:58:50 -04:00
Zach Gollwitzer
3f48992aea Fix trade builder logic
Some checks failed
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
2025-05-13 16:17:25 -04:00
Zach Gollwitzer
bcb47a9d29 Fix auto sync trigger logic and add tests 2025-05-13 16:14:29 -04:00
Alex Hatzenbuhler
bebe7b40d6
Improve rules - add name, allow sorting, improve UI (#2177)
* Add ability to name a rule

* Add sorting by name and date,

* Improve rule page and form design

* Small header tweak

* Improve sorting click areas by including icon

* Fix brakeman

* Use icon helper instead of lucide_icon helper

* Fix double headers with new DialogComponent

* Use updated_at for sorting instead of created_at

* Use copy-plus icon for compound rules

* Remove icons and change IF/THEN/FOR font in edit form

* Use text-secondary on disabled rules

* First pass at redesigning the sorting menu

* New rule list

* Borders instead of shadows

* Apply proper text color to TO in edit form

* Improve dark mode with proper background color classes

* Use border-secondary

* Add touch: true to conditions and actions of a rule, so updated_at works as expected

* Fix db schema

* Change sort direction to be a LinkComponent outside of the form for better sort behavior

* Clean up dropdown design to match figma

* Match tags/categories design

* Fix name text color, add bg-divider background for dividers

* Fix family subscription tests (thanks zach!)
2025-05-13 15:53:13 -04:00
Alex Hatzenbuhler
050d5ebaad
Ensure the condition group "Add condition" button is type button to avoid form submission (#2233)
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-13 10:35:23 -04:00
Alex Hatzenbuhler
30d3eef67f
Fix AND prefix on rule form (#2234)
* Fix AND prefix on rule form

This new condition prefix data target is used to ensure the AND prefix is added/removed to additional conditions/groups when there aren't any saved conditions yet.

* Ensure the condition group "Add condition" button is type button to avoid form submission

* Add prefix update when removing a subcondition

* Use data condition to update the prefix on conditions, condition groups, and subconditions

* Use condition remove instead of element remove for condition groups so prefix logic runs

* Add back explicit show_prefixes to ensure subconditions never have a prefix

* Run the prefix update runs on a load of a form, which handles prefixes on an edit since no conditions change

* Ensure saved items that are marked for removal don't impact the index

* Simplify logic since we don't process subconditions

* Clean up comments

* Add primary_condition_title field to rule model
2025-05-13 10:34:41 -04:00
Zach Gollwitzer
df8e22afe9 Stripe tasks 2025-05-13 08:56:32 -04:00
Zach Gollwitzer
0fb689290a Family subscription unique index 2025-05-13 08:32:53 -04:00
Cameron Roudebush
1137f1f57b feat(errors): Updating error display to better handle SimpleFIN errors
- Also updating models to follow the plaid style a bit more
2025-05-12 22:52:35 -04:00
Zach Gollwitzer
9e6e4b1ce6 Only run Plaid syncs via webhook after initial sync
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-12 18:55:19 -04:00
Zach Gollwitzer
908b3e2489 Temporary disable of sync cascade behavior 2025-05-12 15:41:14 -04:00
Zach Gollwitzer
a268c5a563 Revert "Add env to toggle provider price syncs"
Some checks failed
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
This reverts commit 0006b6f6ca.
2025-05-09 17:47:35 -04:00
Zach Gollwitzer
0006b6f6ca Add env to toggle provider price syncs 2025-05-09 16:59:23 -04:00
Zach Gollwitzer
48a07d6158 Revert batch upserting 2025-05-09 16:42:44 -04:00
Zach Gollwitzer
5d798fe0a0 Remove retry logic from security upsert 2025-05-09 16:31:16 -04:00
Zach Gollwitzer
f07c41821e Add warn log for security price upsert retries 2025-05-09 16:05:10 -04:00
Zach Gollwitzer
7605b0221d Batch upsert security prices on sync 2025-05-09 15:56:48 -04:00
Zach Gollwitzer
ab2cec55e7
Propagate child sync errors up to parent, fix sync status (#2232)
* Propagate child sync errors up to parent, fix sync status

* Remove testing error
2025-05-09 14:56:49 -04:00
Cameron Roudebush
ce98a9f134 fix(balance): Correct initial balances being incorrect 2025-05-09 14:44:49 -04:00
Cameron Roudebush
5f151ec66f feat: Holdings + Transactions
- Added initial syncing for holdings and transactions
- Fixed accounts display not displaying anything for SimpleFIN connections
- Centralized all migrations to one file
2025-05-09 14:34:44 -04:00
Cameron Roudebush
a5cf70f2df
Merge branch 'maybe-finance:main' into simple-fin-integration 2025-05-09 11:30:54 -04:00
Cameron Roudebush
37dc1b3c7e feat(SimpleFIN): Adding initial SimpleFIN integration
- Still early stages
- SimpleFIN can be queried for account information
- Adding some interfaces to be able to select the SimpleFIN accounts found from SimpleFIN bridge
2025-05-09 11:29:59 -04:00
JIBSIL
03e3899541
Config: put Redis service in Docker local network (#2223)
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
old config exposed the Redis server to the internet if the user had not configured a firewall to block port 6379

Signed-off-by: JIBSIL <40243545+JIBSIL@users.noreply.github.com>
2025-05-09 09:52:56 -04:00
Alex Hatzenbuhler
3371243a00
Use single list for desktop and mobile nav bars (#2227)
* Add rules_label to locale file

* Add rules to settings sidebar, use locale text

* Use a single list for mobile and desktop nav
2025-05-09 09:52:18 -04:00
Zach Gollwitzer
d8e058d7c6 Handle case sensitive values when creating securities
Some checks are pending
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-08 14:31:43 -04:00