alignHistoryPage
이 콘텐츠는 아직 번역되지 않았습니다.
function alignHistoryPage( messages, offset, limit): AlignedHistoryPage | null;历史分页边界对齐:消息索引口径的窗口 [offset, offset + limit) 扩到配对干净的边界。「干净边界」= 该长度的前缀内每个 assistant tool_call 都已见到配对 tool_result(无 open 调用)——两端皆干净的切片 自身必配对完整,可直接作视图/initialMessages。
- start 向前(更早)取 ≤ offset 的最大干净边界(0 恒干净);
- end 向后(更晚)取 ≥ min(offset + limit, length) 的最小干净边界;尾部 tool_call 悬而未决(源历史本身断尾)时无此边界,取 length——分页只切不合成占位;
- limit 是下限:为凑齐工具轮,返回区间可比 limit 长。 返回 null = 序列内出现无主 tool_result(其 tool_call 在序列之前,序列不自包含), 调用方须扩大装载范围(file-store 段跳读据此再装一段)。offset/limit 越界按 length 钳制;非整数向下取整;负数按 0。
messages
Section titled “messages”readonly IRMessage[]
offset
Section titled “offset”number
number
AlignedHistoryPage | null
이 페이지가 도움이 되었나요?
피드백 감사합니다. 이 문서를 계속 개선하겠습니다.