Raised when a Stellar/Horizon call fails — rejected transaction, missing trustline, insufficient balance. Should wrap the underlying stellar_sdk exception and expose the Stellar result code for programmatic handling.
Proposed Steps:
- Define
StellarError(ShadeError) in errors.py.
- Add
stellar_result_code: Optional[str] and original_error: Exception.
- Catch
stellar_sdk exceptions in the Stellar integration layer and re-raise as StellarError.
Acceptance Criteria:
- A rejected Stellar transaction raises
StellarError with the Horizon result code.
error.original_error gives access to the raw stellar_sdk exception.
- A trustline-missing error surfaces as
StellarError with a descriptive message.
Raised when a Stellar/Horizon call fails — rejected transaction, missing trustline, insufficient balance. Should wrap the underlying
stellar_sdkexception and expose the Stellar result code for programmatic handling.Proposed Steps:
StellarError(ShadeError)inerrors.py.stellar_result_code: Optional[str]andoriginal_error: Exception.stellar_sdkexceptions in the Stellar integration layer and re-raise asStellarError.Acceptance Criteria:
StellarErrorwith the Horizon result code.error.original_errorgives access to the rawstellar_sdkexception.StellarErrorwith a descriptive message.