INNER CODE UNIT · TypeScript
getManifest
harvard-edge/cs249r_book · interviews/staffml-vault-worker/src/index.ts:99
async function getManifest(env: Env): Promise<Manifest> {
const now = Date.now();
if (manifestMemo && now - manifestMemo.at < MANIFEST_TTL_MS) {
return manifestMemo.manifest;
}
const rows = await env.DB.prepare("SELECT key, value FROM release_metadata").all<{
key: string;
value: string;
}>();
const meta: Record<string, string> = {};
for (const r of rows.results ?? []) meta[r.key] = r.value;
const release_id = meta.release_id ?? "unknown";
maybeInvalidateSchemaCache(release_id);
const manifest: Manifest = {
release_id,
release_hash: meta.release_hash ?? "",
schema_version: meta.schema_version ?? "1",
policy_version: meta.policy_version ?? "1",