@kiturone/kapibala 0.0.8 → 0.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1777,17 +1777,21 @@ var SessionManager = class {
1777
1777
  throw error;
1778
1778
  }
1779
1779
  }
1780
- /** 每页 20 项按正文活动排序;有效 sidecar 只读元数据,不读取完整 JSONL。默认排除已归档会话。 */
1780
+ /**
1781
+ * 按正文活动排序分页;有效 sidecar 只读元数据,不读取完整 JSONL。默认排除已归档会话。
1782
+ * pageSize 由调用方显式给出时必须在 1–100 之间;非法页参数直接失败,不静默修正。
1783
+ */
1781
1784
  async list(page = 1, options) {
1782
- if (!Number.isSafeInteger(page) || page < 1)
1785
+ const pageSize = options?.pageSize ?? 20;
1786
+ if (!Number.isSafeInteger(page) || page < 1 || !Number.isSafeInteger(pageSize) || pageSize < 1 || pageSize > 100)
1783
1787
  throw new Error("History page must be a positive integer");
1784
1788
  const all = await this.allMetadata();
1785
1789
  const filtered = options?.includeArchived ? all : all.filter((m) => !m.archived);
1786
1790
  return {
1787
- items: filtered.slice((page - 1) * 20, page * 20),
1791
+ items: filtered.slice((page - 1) * pageSize, page * pageSize),
1788
1792
  total: filtered.length,
1789
1793
  page,
1790
- pages: Math.max(1, Math.ceil(filtered.length / 20))
1794
+ pages: Math.max(1, Math.ceil(filtered.length / pageSize))
1791
1795
  };
1792
1796
  }
1793
1797
  /** 解析完整 ID 或唯一前缀对应的会话文件与 ID。 */