Skip to content

Add full multi-operation transaction explanations with backward compatibility#516

Merged
Tinna23 merged 7 commits into
StellarCommons:mainfrom
phertyameen:feat/multi_operationTransactions
Jun 21, 2026
Merged

Add full multi-operation transaction explanations with backward compatibility#516
Tinna23 merged 7 commits into
StellarCommons:mainfrom
phertyameen:feat/multi_operationTransactions

Conversation

@phertyameen

Copy link
Copy Markdown
Contributor

closes #509

Summary

Implement support for explaining all supported Stellar operation types and return a structured operations[] array for every transaction.

Changes

  • Added explainers for:
    • create_account
    • change_trust
    • set_options
    • account_merge
    • manage_sell_offer
    • manage_buy_offer
    • path_payment_strict_send
    • path_payment_strict_receive
    • payment (existing support retained)
  • Added graceful fallback explanations for unsupported operation types.
  • Updated transaction responses to include ordered operations[] with index, type, summary, and details.
  • Preserved payment_explanations for backward compatibility.
  • Updated skipped_operations to count only truly unsupported operations.
  • Added Horizon mappings and operation enum variants.
  • Added unit tests for all supported operation types.

Result

Multi-operation Stellar transactions are now fully explained in order, while existing consumers remain compatible with the legacy payment_explanations field.

@phertyameen phertyameen marked this pull request as draft June 20, 2026 00:13
@phertyameen phertyameen marked this pull request as ready for review June 20, 2026 12:13
@Tinna23

Tinna23 commented Jun 21, 2026

Copy link
Copy Markdown
Contributor

@phertyameen please fix CI

@phertyameen

Copy link
Copy Markdown
Contributor Author

@Tinna23 fixed

@Tinna23 Tinna23 merged commit 2d828b2 into StellarCommons:main Jun 21, 2026
2 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.

BE — Support multi-operation transactions with per-operation explanations

2 participants