Zach Gollwitzer
13372dea54
Reset schema
2025-07-10 11:04:08 -04:00
Zach Gollwitzer
33a32ed994
Merge branch 'main' of github.com:maybe-finance/maybe into zachgoll/maybe-902-add-anchor-fields-to-valuation
2025-07-10 11:04:02 -04:00
Zach Gollwitzer
d80cb9f812
Migrate valuations controller to new reconciliation methods
2025-07-10 10:31:40 -04:00
Zach Gollwitzer
25f0c78c47
Update properties controller to use new creational and update balance methods
2025-07-09 22:28:07 -04:00
Zach Gollwitzer
d459ebdad8
Extract reconciliation methods to concern
2025-07-09 17:48:24 -04:00
Zach Gollwitzer
18271ce005
Lint fix
2025-07-09 13:29:28 -04:00
Zach Gollwitzer
3b6a5a573f
Clean up account creational methods
2025-07-09 13:28:37 -04:00
Zach Gollwitzer
a7cd046563
Account creation methods and tests
2025-07-09 11:38:34 -04:00
Josh Pigford
a91441bcc8
Remove old unique index on device_id in mobile_devices migration to allow multiple users to share the same device.
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
2025-07-09 09:22:51 -05:00
Josh Pigford
8d0c1c5a56
Update database schema: increment version to 2025_07_02_173231, modify virtual column definition for classification, and add new indexes for entries and exchange rates.
2025-07-09 09:20:56 -05:00
Zach Gollwitzer
2e09d1a8c0
Test fixes
2025-07-08 13:03:40 -04:00
Zach Gollwitzer
018310d4d1
Fix rate limiting errors in API transaction controller tests
...
When tests run in parallel, they were sharing the same API key fixtures
which caused Redis rate limit counters to accumulate across test workers,
leading to unexpected rate limit errors.
Changes:
- Create fresh API keys in setup instead of using fixtures
- Each API key gets a unique auto-generated ID
- Clear existing active keys to avoid validation conflicts
- Use different sources (web/mobile) for multiple test keys
- Clear Redis rate limit data in setup to ensure clean state
- Update api_headers helper to use display_key instead of plain_key
This follows the existing pattern used in UsageControllerTest for
handling API keys that interact with Redis state.
2025-07-08 11:46:33 -04:00
Zach Gollwitzer
6322c48848
Tweak demo data validation
2025-07-08 10:36:53 -04:00
Zach Gollwitzer
b7acef1e7a
Checkpoint
2025-07-08 10:25:16 -04:00
dependabot[bot]
e848db2aa1
Bump sidekiq from 8.0.4 to 8.0.5 ( #2441 )
...
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
---
updated-dependencies:
- dependency-name: sidekiq
dependency-version: 8.0.5
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-07 16:39:36 -04:00
dependabot[bot]
e7043328e4
Bump pagy from 9.3.4 to 9.3.5 ( #2444 )
...
---
updated-dependencies:
- dependency-name: pagy
dependency-version: 9.3.5
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-07 16:39:19 -04:00
dependabot[bot]
d77c683d59
Bump faraday from 2.13.1 to 2.13.2 ( #2442 )
...
---
updated-dependencies:
- dependency-name: faraday
dependency-version: 2.13.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-07 16:28:24 -04:00
dependabot[bot]
aaf24e1309
Bump stripe from 15.2.1 to 15.3.0 ( #2445 )
...
---
updated-dependencies:
- dependency-name: stripe
dependency-version: 15.3.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-07 16:25:31 -04:00
dependabot[bot]
f9b131a5db
Bump faker from 3.5.1 to 3.5.2 ( #2448 )
...
---
updated-dependencies:
- dependency-name: faker
dependency-version: 3.5.2
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-07 16:22:10 -04:00
dependabot[bot]
a63d36d10c
Bump sentry-rails from 5.25.0 to 5.26.0 ( #2447 )
...
---
updated-dependencies:
- dependency-name: sentry-rails
dependency-version: 5.26.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-07 16:22:01 -04:00
Zach Gollwitzer
15f8d827b5
Account balance anchors
2025-07-07 11:31:37 -04:00
Zach Gollwitzer
662f2c04ce
Multi-step account forms + clearer balance editing ( #2427 )
...
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
* Initial multi-step property form
* Improve form structure, add optional tooltip help icons to form fields
* Add basic inline alert component
* Clean up and improve property form lifecycle
* Implement Account status concept
* Lint fixes
* Remove whitespace
* Balance editing, scope updates for account
* Passing tests
* Fix brakeman warning
* Remove stale columns
* data constraint tweaks
* Redundant property
2025-07-03 09:33:07 -04:00
Eran Avidor
ba7e8d3893
Fix/design system violations ( #2422 )
...
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
* fix: replace hardcoded bg-white with bg-container in notification notice
* fix: replace hardcoded text-white with fg-inverse in notification CTA
* fix: replace hardcoded text-white with fg-inverse in text tooltip
* fix: replace hardcoded bg-gray-900 text-white with bg-inverse fg-inverse in invitations form
* fix: replace hardcoded bg-gray-800 text-white with bg-inverse fg-inverse in AI consent form
* fix: replace hardcoded text-white with fg-inverse in changelog page
* fix: replace hardcoded text-white and border-gray-500 with fg-inverse and border-secondary in investment tooltip
* fix: replace hardcoded text-white with fg-inverse in holdings missing price tooltip
* fix: replace hardcoded text-white and bg-gray-400 with fg-inverse and bg-surface-inset in settings profiles
* fix: replace hardcoded bg-orange-500 text-white with bg-yellow-600 fg-inverse in settings hosting danger zone
---------
Co-authored-by: Eran Avidor <eavidor@Eran-Avidor-MBP.lan>
2025-07-01 13:53:36 -04:00
Zach Gollwitzer
65329b333d
Fix settings labels
...
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
Fixes #2424
2025-06-30 10:22:37 -04:00
dependabot[bot]
0974783a6b
Bump selenium-webdriver from 4.33.0 to 4.34.0 ( #2425 )
...
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium ) from 4.33.0 to 4.34.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases )
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES )
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.33.0...selenium-4.34.0 )
---
updated-dependencies:
- dependency-name: selenium-webdriver
dependency-version: 4.34.0
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-30 09:29:20 -04:00
dependabot[bot]
48f792c20e
Bump jwt from 2.10.1 to 2.10.2 ( #2426 )
...
Bumps [jwt](https://github.com/jwt/ruby-jwt ) from 2.10.1 to 2.10.2.
- [Release notes](https://github.com/jwt/ruby-jwt/releases )
- [Changelog](https://github.com/jwt/ruby-jwt/blob/main/CHANGELOG.md )
- [Commits](https://github.com/jwt/ruby-jwt/compare/v2.10.1...v2.10.2 )
---
updated-dependencies:
- dependency-name: jwt
dependency-version: 2.10.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-30 09:29:00 -04:00
Zach Gollwitzer
869462a9a5
Dynamic y-axis baseline value for chart scales
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
2025-06-27 12:57:23 -04:00
Zach Gollwitzer
e4a82d85e8
Properly handle Plaid investment account transfers ( #2420 )
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-06-27 10:50:45 -04:00
Zach Gollwitzer
18148acd69
Fix chart scale issues ( #2418 )
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-06-26 18:59:11 -04:00
Zach Gollwitzer
8db95623cf
Handle holding quantity generation for reverse syncs correctly when not all holdings are generated for current day ( #2417 )
...
* Handle reverse calculator starting portfolio generation correctly
* Fix current_holdings to handle different dates and hide zero quantities
- Use DISTINCT ON to get most recent holding per security instead of assuming same date
- Filter out zero quantity holdings from UI display
- Maintain cash display regardless of zero balance
- Use single efficient query with proper Rails syntax
* Continue to process holdings even if one is not resolvable
* Lint fixes
2025-06-26 16:57:17 -04:00
Zach Gollwitzer
e60b5df442
Handle bad API data for trade quantity signage ( #2416 )
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-06-26 09:54:25 -04:00
Zach Gollwitzer
f3ab4a27ee
Fix credit card balance history ( #2414 )
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-06-25 17:03:53 -04:00
Zach Gollwitzer
4b50acff2b
Replace sync spinners with pulse animation ( #2413 )
...
* Replace sync spinners with pulse animation
* Remove dev code
2025-06-25 16:51:30 -04:00
Joseph Ho
637d630388
transfer: Support transfers of different currencies between accounts. ( #2243 )
...
Fixes part of #1852 .
Co-authored-by: Zach Gollwitzer <zach@maybe.co>
2025-06-25 16:34:18 -04:00
Zach Gollwitzer
72a0f87a9c
Fix race condition in sync status monitor ( #2412 )
...
Move family timestamp update to after_commit callback to ensure
database visibility before cache invalidation
2025-06-25 15:23:15 -04:00
Kenrick Tandrian
cea49d5038
fix(models): use self.id ( #2410 )
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
2025-06-24 11:15:28 -04:00
Josh Pigford
c0617f74cd
Fix linting issues in migration file
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
2025-06-23 11:31:57 -05:00
Josh Pigford
653decbc0b
Fix outdated timezone references
...
Updates outdated timezone identifiers in the database to their current
equivalents. This resolves ArgumentError exceptions when users have
outdated timezones like "Europe/Kiev" stored in their preferences.
Timezone mappings:
- Europe/Kiev → Europe/Kyiv
- Asia/Calcutta → Asia/Kolkata
- Asia/Katmandu → Asia/Kathmandu
- Asia/Rangoon → Asia/Yangon
- Asia/Saigon → Asia/Ho_Chi_Minh
- Pacific/Ponape → Pacific/Pohnpei
- Pacific/Truk → Pacific/Chuuk
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-23 11:25:03 -05:00
dependabot[bot]
1cfa6cfca8
Bump lookbook from 2.3.9 to 2.3.11 ( #2405 )
...
Publish Docker image / ci (push) Waiting to run
Publish Docker image / Build docker image (push) Blocked by required conditions
Bumps [lookbook](https://github.com/lookbook-hq/lookbook ) from 2.3.9 to 2.3.11.
- [Release notes](https://github.com/lookbook-hq/lookbook/releases )
- [Commits](https://github.com/lookbook-hq/lookbook/compare/v2.3.9...v2.3.11 )
---
updated-dependencies:
- dependency-name: lookbook
dependency-version: 2.3.11
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-23 10:21:33 -04:00
dependabot[bot]
e809335a47
Bump faraday-retry from 2.3.1 to 2.3.2 ( #2406 )
...
Bumps [faraday-retry](https://github.com/lostisland/faraday-retry ) from 2.3.1 to 2.3.2.
- [Release notes](https://github.com/lostisland/faraday-retry/releases )
- [Changelog](https://github.com/lostisland/faraday-retry/blob/main/CHANGELOG.md )
- [Commits](https://github.com/lostisland/faraday-retry/compare/v2.3.1...v2.3.2 )
---
updated-dependencies:
- dependency-name: faraday-retry
dependency-version: 2.3.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-23 10:21:25 -04:00
dependabot[bot]
956008acbf
Bump debug from 1.10.0 to 1.11.0 ( #2407 )
...
Bumps [debug](https://github.com/ruby/debug ) from 1.10.0 to 1.11.0.
- [Release notes](https://github.com/ruby/debug/releases )
- [Commits](https://github.com/ruby/debug/compare/v1.10.0...v1.11.0 )
---
updated-dependencies:
- dependency-name: debug
dependency-version: 1.11.0
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-23 10:21:14 -04:00
dependabot[bot]
8b56262573
Bump faraday-multipart from 1.1.0 to 1.1.1 ( #2408 )
...
Bumps [faraday-multipart](https://github.com/lostisland/faraday-multipart ) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/lostisland/faraday-multipart/releases )
- [Changelog](https://github.com/lostisland/faraday-multipart/blob/main/CHANGELOG.md )
- [Commits](https://github.com/lostisland/faraday-multipart/compare/v1.1.0...v1.1.1 )
---
updated-dependencies:
- dependency-name: faraday-multipart
dependency-version: 1.1.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-23 10:21:07 -04:00
dependabot[bot]
615912040c
Bump ostruct from 0.6.1 to 0.6.2 ( #2409 )
...
Bumps [ostruct](https://github.com/ruby/ostruct ) from 0.6.1 to 0.6.2.
- [Release notes](https://github.com/ruby/ostruct/releases )
- [Commits](https://github.com/ruby/ostruct/compare/v0.6.1...v0.6.2 )
---
updated-dependencies:
- dependency-name: ostruct
dependency-version: 0.6.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-23 10:20:58 -04:00
Zach Gollwitzer
fcf14f5f27
Add pre-pull request flow for Claude code
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
2025-06-20 17:33:03 -04:00
Zach Gollwitzer
63d8114b05
Separate exclude and one-time transaction handling ( #2400 )
...
* Separate exclude and one-time transaction handling
- Split transaction "exclude" and "one-time" toggles into separate controls in transaction detail view
- Updated Transaction::Search to show excluded transactions with grayed-out styling instead of filtering them out
- Modified IncomeStatement calculations to exclude both excluded and one_time transactions from totals
- Added migration to convert existing excluded transactions to also be one_time for backward compatibility
- Updated transaction list view to show asterisk for one_time transactions and gray out excluded ones
- Added controller support for kind parameter in transaction updates
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
* Fix linting issues
- Remove trailing whitespace from migration
- Fix ERB formatting throughout templates
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
---------
Co-authored-by: Claude <noreply@anthropic.com>
2025-06-20 17:10:36 -04:00
Zach Gollwitzer
c003e8c6ed
Transfer match truncation fix
2025-06-20 14:08:46 -04:00
Zach Gollwitzer
ab1c17ea14
Fix transaction layout alignment regression
2025-06-20 13:58:24 -04:00
Zach Gollwitzer
1aae00f586
perf(transactions): add kind
to Transaction
model and remove expensive Transfer joins in aggregations ( #2388 )
...
* add kind to transaction model
* Basic transfer creator
* Fix method naming conflict
* Creator form pattern
* Remove stale methods
* Tweak migration
* Remove BaseQuery, write entire query in each class for clarity
* Query optimizations
* Remove unused exchange rate query lines
* Remove temporary cache-warming strategy
* Fix test
* Update transaction search
* Decouple transactions endpoint from IncomeStatement
* Clean up transactions controller
* Update cursor rules
* Cleanup comments, logic in search
* Fix totals logic on transactions view
* Fix pagination
* Optimize search totals query
* Default to last 30 days on transactions page if no filters
* Decouple transactions list from transfer details
* Revert transfer route
* Migration reset
* Bundle update
* Fix matching logic, tests
* Remove unused code
2025-06-20 13:31:58 -04:00
Josh Pigford
7aca5a2277
Fix remaining rubocop offenses
...
Publish Docker image / ci (push) Has been cancelled
Publish Docker image / Build docker image (push) Has been cancelled
- Fix string literal style in doorkeeper.rb
- Add missing final newlines
- Remove trailing whitespace
- Fix array bracket spacing in migrations
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-18 08:38:04 -05:00
Josh Pigford
8296e10246
Fix linting issues and update API key test for source validation
...
- Remove trailing whitespace in auth controller and mobile device model
- Update API key test to expect new validation message with source
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-18 08:28:32 -05:00