Skip to content

Conversation

@chauanhtuan185
Copy link
Contributor

@chauanhtuan185 chauanhtuan185 commented Dec 9, 2025

Summary

This PR adds the missing signature field to the SignAndSendTransactionResponse.
The field is required for clients that need to log, verify, or process transaction signatures returned from signAndSendTransaction.


Changes

  • Added signature: string to SignAndSendTransactionResponse
  • Updated RPC parsing logic to correctly include the missing field
  • Added tests ensuring the signature field is returned correctly

Tests

  • Updated existing tests that depended on the previous type definition
  • Ensured backward compatibility with existing callers

Documentation

No documentation changes required — the API documentation already includes the signature field.


Motivation

Without the signature field, consumers of signAndSendTransaction could not access the resulting transaction signature, preventing verification and logging workflows.
This update aligns the Kora RPC response with expected Solana client behaviors.


Type of Change

  • Bug fix (fix)
  • New feature (feat)
  • Breaking change (!)
  • Docs update (docs)
  • Refactor (refactor)
  • Chore/deps (chore)

Important

Add missing signature field to SignAndSendTransactionResponse and update tests to ensure correct inclusion.

  • Behavior:
    • Add signature: string to SignAndSendTransactionResponse in index.ts.
    • Update RPC parsing logic to include signature field.
  • Tests:
    • Add test in unit.test.ts to ensure signature field is returned correctly in signAndSendTransaction.
    • Update existing tests for backward compatibility.
  • Documentation:
    • No changes needed; API docs already include signature field.

This description was created by Ellipsis for afea55f. You can customize this summary. It will automatically update as commits are pushed.

Copy link
Contributor

@ellipsis-dev ellipsis-dev bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Important

Looks good to me! 👍

Reviewed everything up to afea55f in 35 seconds. Click for details.
  • Reviewed 25 lines of code in 2 files
  • Skipped 0 files when reviewing.
  • Skipped posting 2 draft comments. View those below.
  • Modify your settings and rules to customize what types of comments Ellipsis leaves. And don't forget to react with 👍 or 👎 to teach Ellipsis.
1. sdks/ts/src/types/index.ts:112
  • Draft comment:
    Added the missing 'signature' field to SignAndSendTransactionResponse. Looks correct; ensure your RPC parser correctly extracts this field from responses.
  • Reason this comment was not posted:
    Confidence changes required: 0% <= threshold 50% None
2. sdks/ts/test/unit.test.ts:271
  • Draft comment:
    Updated signAndSendTransaction test to include the 'signature' field, which now matches the updated type. Test reflects expected outcome.
  • Reason this comment was not posted:
    Confidence changes required: 0% <= threshold 50% None

Workflow ID: wflow_hQGSlGZp6yeLrWXs

You can customize Ellipsis by changing your verbosity settings, reacting with 👍 or 👎, replying to comments, or adding code review rules.

@dev-jodee
Copy link
Contributor

Hey ! thanks for the PR, can you fix the CI errors (typescript testS) and i'll be happy to merge

@chauanhtuan185
Copy link
Contributor Author

Hey @dev-jodee! Thanks for the review 🙌
I've addressed the CI error by preventing the coverage comment step from running on forked PRs.
All TypeScript unit tests should be passing now.

@dev-jodee
Copy link
Contributor

Thanks for that, actually just realized what you're trying to do, and you'll need a quick change in rust as well, right now you only changed the TS types but the backend itself won't return the signature, there's a bit of work to be done here : https://github.com/solana-foundation/kora/blob/main/crates/lib/src/rpc_server/method/sign_and_send_transaction.rs#L29 :)

@chauanhtuan185
Copy link
Contributor Author

Thanks for pointing that out. The internal flow already returned the signature,
but it was being dropped at the RPC layer.

I've updated the Rust implementation to include it in the response, synced the
internal OpenAPI spec, and all CI checks are passing. @dev-jodee

@dev-jodee dev-jodee self-requested a review December 17, 2025 13:24
Copy link
Contributor

@dev-jodee dev-jodee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@dev-jodee dev-jodee merged commit 37d7122 into solana-foundation:main Dec 17, 2025
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants