move sync result wrapping into BaseAgentMode