package tech.easyflow.chatlog.service;

import tech.easyflow.chatlog.domain.command.ChatRoundSelectCommand;
import tech.easyflow.chatlog.domain.command.ChatRoundUpsertCommand;
import tech.easyflow.chatlog.domain.dto.ChatRoundRecord;

/**
 * 聊天轮次写服务。
 */
public interface ChatRoundCommandService {

    /**
     * 创建或更新轮次聚合。
     *
     * @param command 轮次命令
     * @return 最新轮次记录
     */
    ChatRoundRecord createOrTouchRound(ChatRoundUpsertCommand command);

    /**
     * 切换轮次当前选中的答案版本。
     *
     * @param command 切换命令
     */
    void selectVariant(ChatRoundSelectCommand command);
}
