executeWithLock executes a function with distributed locks to ensure exclusive access to both source and destination balances. It resolves balance IDs first (handling @world indicators), then acquires locks in deterministic order to prevent deadlocks. Parameters: - ctx context.Context: The context
(ctx context.Context, transaction *model.Transaction, fn func(context.Context) (*model.Transaction, error))
source not stored for this graph (policy: none)
no test coverage detected