Description
The AutopilotVault Soroban contract in contracts/src/lib.rs has no event emission (env.events().publish()) for any action. This makes it impossible to:
- Audit contract interactions without querying Horizon API separately.
- Build indexers or subgraphs on top of the contract.
- Detect re-entrancy or double-spend scenarios at the contract layer.
Expected Behavior
Every state-changing function (initialize, withdraw) should emit a Soroban event.
Suggested Fix
// In withdraw():
env.events().publish(
(symbol_short!(withdraw), owner.clone()),
(token_address.clone(), amount),
);
Impact
High - Without events, on-chain auditability is zero. Stellar Expert cannot surface contract activity.
Description
The
AutopilotVaultSoroban contract incontracts/src/lib.rshas no event emission (env.events().publish()) for any action. This makes it impossible to:Expected Behavior
Every state-changing function (
initialize,withdraw) should emit a Soroban event.Suggested Fix
Impact
High - Without events, on-chain auditability is zero. Stellar Expert cannot surface contract activity.