countMemoryFileAccessFromEntries function

int countMemoryFileAccessFromEntries(
  1. List<TranscriptEntry> entries, {
  2. required MemoryFileAccessChecker isMemoryFileAccess,
})

Count memory file accesses in transcript entries. Uses the same detection conditions as the PostToolUse session file access hooks.

Implementation

int countMemoryFileAccessFromEntries(
  List<TranscriptEntry> entries, {
  required MemoryFileAccessChecker isMemoryFileAccess,
}) {
  var count = 0;
  for (final entry in entries) {
    if (entry.type != 'assistant') continue;
    final blocks = entry.contentBlocks;
    if (blocks == null) continue;
    for (final block in blocks) {
      if (block['type'] != 'tool_use' ||
          !memoryAccessToolNames.contains(block['name'])) {
        continue;
      }
      if (isMemoryFileAccess(block['name'] as String, block['input'])) {
        count++;
      }
    }
  }
  return count;
}