Josh Pigford
868d4ede6e
Sankey Diagram ( #2269 )
...
* Enhance cash flow dashboard with new cash flow period handling and improved Sankey diagram rendering. Update D3 and related dependencies for better performance and features.
* Fix Rubocop offenses
* Refactor Sankey chart controller to use Number.parseFloat for value formatting and improve code readability by restructuring conditional logic for node shapes.
2025-05-20 13:31:05 -05:00
Zach Gollwitzer
94a807c3c9
Encapsulate enrichment actions, add tests
2025-05-20 11:33:35 -04:00
Zach Gollwitzer
dd605a577e
Bump ruby to 3.4.4
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-20 09:09:10 -04:00
Zach Gollwitzer
137219c121
Fix attribute locking namespace conflict, duplicate syncs
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-19 16:39:31 -04:00
Zach Gollwitzer
ab5bce3462
Fix provider guards for start price
2025-05-19 15:19:41 -04:00
Alex Hatzenbuhler
1b4577e21e
Fix subconditions and condition group form ( #2256 )
2025-05-19 13:34:02 -04:00
Zach Gollwitzer
e26e5c5aec
Auto sync preference, max limit on account CSV imports ( #2259 )
...
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
* Auto sync preference, max limit on account CSV imports
* MaxRowCountExceededError
2025-05-18 15:02:51 -04:00
Zach Gollwitzer
f82f77466a
Fix Sentry context for security details exception
2025-05-18 10:52:35 -04:00
Zach Gollwitzer
74c7b0941d
More exception logging tweaks
2025-05-18 10:27:46 -04:00
Zach Gollwitzer
29a8ac9d8a
Tweak exception logging, sync stale behavior
2025-05-18 10:19:15 -04:00
Zach Gollwitzer
9f13b5bb83
Handle stale syncs ( #2257 )
...
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 )
...
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
Zach Gollwitzer
b8903d0980
Fix start date missing error in market data sync
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
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
Zach Gollwitzer
3f48992aea
Fix trade builder logic
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
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
9e6e4b1ce6
Only run Plaid syncs via webhook after initial sync
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"
...
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
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
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
Zach Gollwitzer
867318cbc1
Improve sync data management
2025-05-08 12:52:40 -04:00
Zach Gollwitzer
1e5edd9f2f
Fix Plaid cash balance double counting ( #2222 )
...
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
* Fix Plaid cash balance double counting
* Fix today's cash balance
* Simplify balance trends in activity view
2025-05-08 12:25:53 -04:00
Alex Hatzenbuhler
42207e487e
Fix dark mode welcome screen for self-hosting ( #2225 )
2025-05-08 08:45:28 -05:00
Zach Gollwitzer
ea1b6f2bd8
Fix chart timezone bug ( #2224 )
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-07 22:19:09 -04:00
Zach Gollwitzer
2707a40a2a
Handle nested child syncs ( #2220 )
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-07 18:12:08 -04:00
Zach Gollwitzer
8b857e9c8a
Notify parent sync in ensure block
2025-05-07 16:51:11 -04:00
Zach Gollwitzer
a07e9d40a3
Transactional locks for sync completions ( #2219 )
...
* Transactional locks for sync completions
* Lower sync display logic tolerance in UI
2025-05-07 16:28:58 -04:00
Zach Gollwitzer
71be2a04ad
Fix rule title reference
2025-05-07 14:10:56 -04:00
Zach Gollwitzer
a67f36bf64
Prevent account deletions when account is linked to a Plaid Item ( #2218 )
...
* Prevent account deletions when account is linked to a Plaid Item
* Only guard deletions in UI and controller, not at model level
2025-05-07 13:56:20 -04:00
Zach Gollwitzer
628d266980
Fix merchant assignment to transactions
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-07 11:05:29 -04:00
Zach Gollwitzer
2b2dfd03e0
Fix select contrast issues in dark mode forms
2025-05-07 10:23:06 -04:00
Zach Gollwitzer
fb7107d614
feature(dark mode): misc design fixes ( #2215 )
...
* Fix category dark mode styles
* Fix sidebar account tab states
* Fix dashboard balance sheet group styles
* Fix budget dark mode styles
* Fix chart gradient split
* Fix prose styles in dark mode
* Add back chat nav id for tests
2025-05-07 09:26:06 -04:00
Zach Gollwitzer
c26a7dd2dd
Handle super admins for billing emails
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-05-06 14:14:57 -04:00
Zach Gollwitzer
5da4bb6dc3
Subscription tests and domain ( #2209 )
...
* Save work
* Subscriptions and trials domain
* Store family ID on customer
* Remove indirection of stripe calls
* Test simplifications
* Update brakeman
* Fix stripe tests in CI
* Update billing page to show subscription details
* Remove legacy columns
* Complete billing settings page
* Fix hardcoded plan name
* Handle subscriptions for self hosting mode
* Lint fixes
2025-05-06 14:05:21 -04:00