╭ changed ────────────╮ │src/ui/Home/Repos.zig│ ╰─────────────────────╯ ╭───────────╮ │← all files│ ╰───────────╯ ╭─────────────────────────────────────────────────────╮ │22 pub fn init( │ │23 arena: *std.heap.ArenaAllocator, │ │24 haxy_moment: evt.AdminDB.HashMap(.read_only),│ │25 + user_id: ?[evt.event_id_size]u8, │ │26 start: usize, │ │27 ) !Self { │ │28 const DB = evt.AdminDB; │ ╰─────────────────────────────────────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │57 const repo_cursor = try event_id_to_repo.getCursor(hash.hashInt(hash_kind, event_id)) orelse continue;│ │58 const repo_map = try DB.HashMap(.read_only).init(repo_cursor); │ │59 const repo_event = try evt.read(evt.Repo.Record, DB, hash_kind, arena, repo_map); │ │60 + // unreadable repos leave their window short rather than shifting the others │ │61 + if (evt.Repo.roleOf(repo_event, user_id) == .none) continue; │ │62 try repos.append(arena.allocator(), repo_event); │ │63 │ │64 const owner = try evt.User.readById(DB, hash_kind, haxy_moment, arena, repo_event.event.user_id); │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯