Skip to content

feat: consolidate enhancements and fixes (#375, #376, #377, #378)#407

Merged
vic-Gray merged 1 commit into
code-flexing:mainfrom
ayomideadeniran:feat/consolidate-issues-375-378
May 31, 2026
Merged

feat: consolidate enhancements and fixes (#375, #376, #377, #378)#407
vic-Gray merged 1 commit into
code-flexing:mainfrom
ayomideadeniran:feat/consolidate-issues-375-378

Conversation

@ayomideadeniran
Copy link
Copy Markdown

Description

This PR consolidates multiple enhancements, architectural improvements, and reliability fixes across the Harvest-Finance platform.

Key Changes

  • Pagination Enhancement: Added cursor-based pagination (skip/limit) to getPublicVaults to prevent timeouts as the number of vaults grows.
  • Architecture Refactoring: Extracted repeated notification-building logic into a centralized NotificationHelper, resolving inconsistencies when notification templates change.
  • Network Reliability: Implemented the CircuitBreaker pattern for Stellar Horizon calls, preventing cascading failures across the app during Stellar network outages.
  • Code Quality Improvements: Refactored SorobanExceptionFilter to utilize a typed error code map rather than fragile substring matching, improving robustness against SDK error message updates.

Related Issues

Closes #375
Closes #376
Closes #377
Closes #378

Testing Instructions

  • Verify getPublicVaults correctly paginates results using the new parameters.
  • Ensure notifications are generated consistently via the new NotificationHelper.
  • Simulate a Stellar Horizon outage to verify the circuit breaker correctly opens and degrades gracefully.
  • Trigger Soroban SDK errors to confirm the updated SorobanExceptionFilter maps and handles them appropriately.

@vercel
Copy link
Copy Markdown

vercel Bot commented May 31, 2026

Someone is attempting to deploy a commit to the vic's projects Team on Vercel.

A member of the Team first needs to authorize it.

@vic-Gray vic-Gray merged commit 7e15aa7 into code-flexing:main May 31, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants