Skip to content

Conversation

@sisuresh
Copy link
Owner

Description

Resolves #X

Checklist

  • Reviewed the contributing document
  • Rebased on top of master (no merge commits)
  • Ran clang-format v8.0.0 (via make format or the Visual Studio extension)
  • Compiles
  • Ran all tests
  • If change impacts performance, include supporting evidence per the performance document

@sisuresh sisuresh requested a review from Copilot August 20, 2025 21:56

This comment was marked as outdated.

@sisuresh sisuresh closed this Aug 20, 2025
@sisuresh sisuresh reopened this Aug 20, 2025
@sisuresh sisuresh requested a review from Copilot August 20, 2025 22:04
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR updates the memo filtering logic for Soroban transactions by removing the special case handling for source-account-only authorization. The change simplifies the validation to always reject Soroban transactions that have memos or use muxed ED25519 accounts, regardless of the authorization type.

  • Removes the source account authorization check that previously allowed memo usage
  • Simplifies the validation logic to a single conditional check
  • Updates the corresponding test to expect ADD_STATUS_ERROR instead of ADD_STATUS_PENDING

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
src/herder/TransactionQueue.cpp Simplifies validateSorobanMemo function by removing source account auth logic and combining memo/muxed account checks
src/herder/test/TransactionQueueTests.cpp Updates test expectation from ADD_STATUS_PENDING to ADD_STATUS_ERROR for Soroban tx with memo


REQUIRE(app->getHerder().recvTransaction(txWithMemo, false).code ==
TransactionQueue::AddResultCode::ADD_STATUS_PENDING);
TransactionQueue::AddResultCode::ADD_STATUS_ERROR);
Copy link

Copilot AI Aug 20, 2025

Choose a reason for hiding this comment

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

This test change indicates a behavior modification in transaction processing. According to the coding guidelines, fee bump tests should be written to accompany any logic changes to transaction processing. Consider adding fee bump test coverage for this memo filtering change.

Copilot uses AI. Check for mistakes.
@sisuresh sisuresh closed this Aug 20, 2025
github-merge-queue bot pushed a commit to stellar/stellar-core that referenced this pull request Aug 26, 2025
# Description

Adds [copilot
instructions](https://docs.github.com/en/copilot/how-tos/configure-custom-instructions/add-repository-instructions)
to comment if fee bumps tests should be written.

We could also make additional changes for more targeted reviews on
things like style guidelines and missing tests.

Here's an example of this in action -
sisuresh#15 (comment)

<!---

Describe what this pull request does, which issue it's resolving
(usually applicable for code changes).

--->

# Checklist
- [ ] Reviewed the
[contributing](https://github.com/stellar/stellar-core/blob/master/CONTRIBUTING.md#submitting-changes)
document
- [ ] Rebased on top of master (no merge commits)
- [ ] Ran `clang-format` v8.0.0 (via `make format` or the Visual Studio
extension)
- [ ] Compiles
- [ ] Ran all tests
- [ ] If change impacts performance, include supporting evidence per the
[performance
document](https://github.com/stellar/stellar-core/blob/master/performance-eval/performance-eval.md)
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.

1 participant