package com.superbiz.agent.dto;
import lombok.Builder;
import lombok.Data;
import java.util.List;
/**
* 检索后处理输出(打包 / 组装前的中间结果)。
*
*
由 {@code KnowledgeEvidencePostProcessor} 生成,再交给 context packer 与 result assembler。
*/
@Data
@Builder
public class EvidencePostprocessResult {
/** 后处理前候选数。 */
private Integer candidateCount;
/** 去重后 evidence 条数。 */
private Integer evidenceBlockCount;
private List evidenceBlocks;
/** PRECISE / HIGHLY_RELEVANT / REFERENCE;不可用时 null。 */
private String relevanceLevel;
/** 给模型的完整性/天花板提示。 */
private String completenessHint;
private RerankTrace rerankTrace;
/**
* 排序第一名(originalRank 最优)的 qualityScore(0~1,越大越好)。
* 用于 isLowQuality 与 attempt.topSimilarity。
*/
private Double topSimilarity;
/** 当前定义:evidenceBlocks 非空即视为有可用证据。 */
public boolean hasUsableEvidence() {
return evidenceBlocks != null && !evidenceBlocks.isEmpty();
}
}