Review a generated request cache

from WeakMap and WeakSet
Node 24 advanced 9 min 4 issues to find

Review this generated summary cache before it handles application requests.

Cache a public payload summary by request identity without keeping requests alive, reject invalid request shapes, never expose tokens or mutable cached data, and do not promise an entry count.

JavaScript
const summaries = new WeakMap();

function summarizeRequest(request) {
  const cacheKey = { id: request.id };
  if (summaries.has(cacheKey)) {
    return summaries.get(cacheKey);
  }

  const fields = Object.keys(request.payload).sort();
  const summary = {
    id: String(request.id),
    fields,
    token: request.token,
  };
  summaries.set(cacheKey, summary);
  return summary;
}

function cachedCount() {
  return summaries.size || 0;
}

generated code is illustrative, not from any one model

Open in playground
Report an error