From a4388bca87828c4c5ad621c2fb78d87ba1b05822 Mon Sep 17 00:00:00 2001 From: zzstoatzz Date: Sat, 29 Aug 2026 02:10:31 -0500 Subject: [PATCH] api: /api/checksums so the flow can re-read compacted segments --- src/index.ts | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/index.ts b/src/index.ts index a9ba669..b124190 100644 --- a/src/index.ts +++ b/src/index.ts @@ -337,6 +337,12 @@ async function partitions(url: URL, env: Env): Promise { return json({ ns, files: urls, bytes, truncated: listed.truncated }, 200, { "cache-control": "public, max-age=120" }); } +/** every summarised segment's checksum, so the flow can re-read segments compaction has rewritten. */ +async function checksums(env: Env): Promise { + const { results } = await env.DB.prepare("SELECT idx, checksum FROM segments ORDER BY idx").all<{ idx: number; checksum: string }>(); + return json({ segments: results }); +} + async function namespaces(env: Env): Promise { const { results } = await env.DB.prepare( "SELECT ns, SUM(count) AS count, COUNT(DISTINCT nsid) AS members FROM segment_collections GROUP BY ns ORDER BY count DESC", @@ -359,6 +365,8 @@ export default { return collections(url, env); case "/api/namespaces": return namespaces(env); + case "/api/checksums": + return checksums(env); case "/api/partitions": return partitions(url, env); case "/": -- 2.51.2