Skip to content

Feat/solvo - #570

Merged
BigBen-7 merged 2 commits into
Lead-Studios:mainfrom
memplethee-lab:feat/Solvo
Aug 30, 2026
Merged

Feat/solvo#570
BigBen-7 merged 2 commits into
Lead-Studios:mainfrom
memplethee-lab:feat/Solvo

Conversation

@memplethee-lab

@memplethee-lab memplethee-lab commented Aug 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Closes #529

Closes

Closes #528

Checklist

Closes #530

  • Tests added or updated
  • Docs updated (JSDoc / README)
  • CHANGELOG.md updated under [Unreleased] (required by CI if src/ changed — see CONTRIBUTING.md)
  • API surface change is intentional, not accidental (public method signatures / exported types)
  • npm run build passes
  • npm test passes
  • npm run lint passes

Closes #536

ykargeee-bit and others added 2 commits August 29, 2026 18:10
…the paused field is correctly returned by

've successfully added the requested tests to tests/recurring.test.ts to confirm that the paused field is correctly returned by RecurringModule.getRecurring. Here's what was implemented:

Key changes made:
Added a new test suite RecurringModule.getRecurring paused field parsing at the end of the file to group these specific tests
Included a mapEntry helper function to create valid XDR ScMap entries, following the same pattern used in escrow.test.ts
Implemented both requested test cases:
getRecurring returns paused:true when the contract record is paused - mocks a contract record with paused: true and verifies the parsed result has paused: true
getRecurring returns paused:false for an active recurring record - mocks a contract record with paused: false and verifies the parsed result has paused: false
Implementation details:
Used the existing makeRecurringClient helper to create a connected test client
Constructed valid raw Soroban ScvMap objects with all required fields for a recurring payment record
Used nativeToScVal from @stellar/stellar-sdk to properly encode values to their correct XDR types
Added non-null assertion (!) to record! since we know the mock will always return a valid record
Included all required fields (id, payer, payee, amount, interval, active, paused, last_charged_ledger) to ensure the parser receives a complete record
These tests will catch any future regressions in the parser that might cause the paused field to be incorrectly parsed, ensuring the bug fix that was implemented in parsers.ts remains effective.
…ted:

All the required files are created. Let's summarize what we've completed:

✅ Tasks Completed
1. Added VSCode Workspace Settings
Created .vscode/extensions.json with all recommended extensions:
dbaeumer.vscode-eslint (ESLint)
esbenp.prettier-vscode (Prettier)
orta.vscode-jest (Jest test runner)
ms-vscode.vscode-typescript-next (latest TypeScript)
Created .vscode/settings.json with:
Format on save enabled
Prettier set as default formatter
Correct TypeScript SDK path pointing to node_modules
2. Added Read-Only Client Guard Tests
Added the test suite to tests/client.test.ts:
makeReadOnlyClient() helper that creates a client without a keypair (read-only mode)
Test that token.mint() throws ReadOnlyClient error
Test that escrow.createEscrow() throws ReadOnlyClient error
Test that read operations like token.balance() work fine on read-only clients, with proper mocking to prevent network calls
The tests properly use VeriTixErrorCode.ReadOnlyClient to validate the error code is correct
All requirements from the task description have been fully implemented. The VSCode settings will make onboarding new contributors instant, and the new tests ensure the read-only client functionality is properly validated.
@drips-wave

drips-wave Bot commented Aug 29, 2026

Copy link
Copy Markdown

@memplethee-lab 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

@BigBen-7
BigBen-7 merged commit d3bf373 into Lead-Studios:main Aug 30, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment