Skip to content

feat: resolve issues #690 #691 #692 #693 - #797

Merged
Kingsman-99 merged 1 commit into
Stellar-split:mainfrom
ahmadadebayo78-boop:feat/issues-690-691-692-693
Aug 31, 2026
Merged

Kingsman-99 merged 1 commit into
Stellar-split:mainfrom
ahmadadebayo78-boop:feat/issues-690-691-692-693

Conversation

@ahmadadebayo78-boop

Copy link
Copy Markdown
Contributor

#693 tokenGateController: add time-bounded gate windows

  • Define TokenGatePolicy interface in src/types.ts with validFrom/validUntil fields
  • Evaluate time window in verify() before balance check; gate returns false (or warns in non-strict mode) outside the active window
  • Add 6 time-window unit tests to test/tokenGateController.test.ts

#692 horizonPaginator: automatic page-size negotiation

  • Add HorizonPaginator class with effectivePageSize read-only property
  • On first page response, detect server-capped page size via observeFirstPage()
  • Use effectivePageSize in isLastPage() to prevent premature termination
  • Add pageSize option to HorizonPaginatorOptions in src/types.ts
  • Add page-size negotiation integration tests to test/horizonPaginator.test.ts

#691 invoiceBatchProcessor: partial-failure handling tests

  • Add processAll() method returning { succeeded, failed } arrays
  • Create src/tests/invoiceBatchProcessor.test.ts with 3 required tests: one-invoice-throws continues batch, succeeded/failed arrays are correct, all-fail returns empty succeeded array

#690 feeSurgeDetector: moving-average baseline

  • Add windowSize config option (default 20) for sliding fee sample window
  • addFeeSample() maintains a circular buffer of recent observations
  • movingAverageBaseline() returns null (static fallback) until window is full
  • Export resetFeeSurgeWindow() and getFeeSampleWindow() for testability
  • Create test/feeSurgeDetector.test.ts with 8 unit tests

misc: clean up .gitignore (dist trailing slash, vitest-cache, junit.xml)
closes #690
closes #691
closes #692
closes #693

…t#692 Stellar-split#693

Stellar-split#693 tokenGateController: add time-bounded gate windows
- Define TokenGatePolicy interface in src/types.ts with validFrom/validUntil fields
- Evaluate time window in verify() before balance check; gate returns false
  (or warns in non-strict mode) outside the active window
- Add 6 time-window unit tests to test/tokenGateController.test.ts

Stellar-split#692 horizonPaginator: automatic page-size negotiation
- Add HorizonPaginator class with effectivePageSize read-only property
- On first page response, detect server-capped page size via observeFirstPage()
- Use effectivePageSize in isLastPage() to prevent premature termination
- Add pageSize option to HorizonPaginatorOptions in src/types.ts
- Add page-size negotiation integration tests to test/horizonPaginator.test.ts

Stellar-split#691 invoiceBatchProcessor: partial-failure handling tests
- Add processAll() method returning { succeeded, failed } arrays
- Create src/__tests__/invoiceBatchProcessor.test.ts with 3 required tests:
  one-invoice-throws continues batch, succeeded/failed arrays are correct,
  all-fail returns empty succeeded array

Stellar-split#690 feeSurgeDetector: moving-average baseline
- Add windowSize config option (default 20) for sliding fee sample window
- addFeeSample() maintains a circular buffer of recent observations
- movingAverageBaseline() returns null (static fallback) until window is full
- Export resetFeeSurgeWindow() and getFeeSampleWindow() for testability
- Create test/feeSurgeDetector.test.ts with 8 unit tests

misc: clean up .gitignore (dist trailing slash, vitest-cache, junit.xml)
@drips-wave

drips-wave Bot commented Aug 31, 2026

Copy link
Copy Markdown

@ahmadadebayo78-boop Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@Kingsman-99
Kingsman-99 merged commit f496ac8 into Stellar-split:main Aug 31, 2026
therealbibson pushed a commit to therealbibson/split-sdk that referenced this pull request Oct 12, 2026
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