Overview
Add support for accepting invoice payments relayed from other chains (e.g. Ethereum, Solana) via a trusted bridge contract. The StellarSplit contract must verify a signed relay proof before crediting the payment, so no funds can be injected without a valid cross-chain attestation.
Requirements
- Define a
bridge_pay entry point that accepts a relay proof struct (BridgeProof) containing: source chain ID, source tx hash, sender address bytes, amount, and a bridge authority signature
- Verify the signature against a stored
bridge_authority admin key before crediting
- Emit a
BridgePaymentReceived event with full proof metadata
- Integrate with the existing payment flow — trigger auto-release if the invoice becomes fully funded
- Reject replayed proofs (store consumed tx hashes)
- Write unit tests covering: valid relay, invalid signature, replayed proof, wrong invoice, wrong amount
Acceptance Criteria
Definition of Done
All CI checks must pass before the PR is reviewed. PRs with failing tests or clippy warnings will not be merged.
Overview
Add support for accepting invoice payments relayed from other chains (e.g. Ethereum, Solana) via a trusted bridge contract. The StellarSplit contract must verify a signed relay proof before crediting the payment, so no funds can be injected without a valid cross-chain attestation.
Requirements
bridge_payentry point that accepts a relay proof struct (BridgeProof) containing: source chain ID, source tx hash, sender address bytes, amount, and a bridge authority signaturebridge_authorityadmin key before creditingBridgePaymentReceivedevent with full proof metadataAcceptance Criteria
bridge_payentry point implemented and callableAlreadyConsumedcargo test --workspacepasses with zero failurescargo clippy --all-targets -- -D warningsproduces zero warningsDefinition of Done
All CI checks must pass before the PR is reviewed. PRs with failing tests or clippy warnings will not be merged.