Skip to content

Investor dashboard aggregate, invoice due-date validation, KYC audit logs, stroops formatter - #57

Merged
Chucks1093 merged 4 commits into
StellarState:mainfrom
mhikel66:fix/issues-46-47-48-49
Jul 27, 2026
Merged

Investor dashboard aggregate, invoice due-date validation, KYC audit logs, stroops formatter#57
Chucks1093 merged 4 commits into
StellarState:mainfrom
mhikel66:fix/issues-46-47-48-49

Conversation

@mhikel66

@mhikel66 mhikel66 commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

Closes #47


Closes #48


Closes #46


Closes #49


Summary

Test plan

  • npx jest — 171/171 passing
  • npm run lint — clean
  • npx tsc --noEmit — clean

mhikel66 added 4 commits July 27, 2026 09:38
Resolves StellarState#49. Uses integer arithmetic throughout so conversions are
exact even for amounts above MAX_SAFE_INTEGER.
Resolves StellarState#47. Adds validateInvoiceForPublish and wires it into
InvoiceService.publishInvoice ahead of the state transition.
Resolves StellarState#46. GET /api/v1/investments/dashboard returns totalInvested
(all statuses), totalReturns (settled only), and activeInvestments
(pending/confirmed) for the authenticated investor.
Resolves StellarState#48. approve-kyc.ts now targets the real User model (it was
reading src/entities/User, a stale duplicate with no stellarAddress
column) and logs after the DB update commits. Adds reject-kyc.ts,
which didn't previously exist, mirroring the same flow plus a
rejection_reason field.
@drips-wave

drips-wave Bot commented Jul 27, 2026

Copy link
Copy Markdown

@mhikel66 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

@Chucks1093
Chucks1093 merged commit 6e79ef3 into StellarState:main Jul 27, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment