╭ changed ────╮ │src/event.zig│ ╰─────────────╯ ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │373 const repo_map = try DB.HashMap(.read_write).init(repo_cursor); │ │374 │ │375 try upsert(DB, repo_opts.hash, repo_map, @TypeOf(data), data); │ │376 + │ │377 + const user_id_to_repos_cursor = try haxy_moment.putCursor(hash.hashInt(repo_opts.hash, "user-id->repos")); │ │378 + const user_id_to_repos = try DB.HashMap(.read_write).init(user_id_to_repos_cursor); │ │379 + │ │380 + const user_repos_cursor = try user_id_to_repos.putCursor(hash.hashInt(repo_opts.hash, data.user_id)); │ │381 + const user_repos = try DB.CountedHashSet(.read_write).init(user_repos_cursor); │ │382 + try user_repos.put(hash.hashInt(repo_opts.hash, &current_event_id), .{ .bytes = &current_event_id }); │ │383 }, │ │384 .issue => |data| { │ │385 const event_id_to_issue_cursor = try haxy_moment.putCursor(hash.hashInt(repo_opts.hash, "event-id->issue"));│ ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭ changed ─────────╮ │src/test/event.zig│ ╰──────────────────╯ ╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │931 │ │932 try std.testing.expectEqualSlices(u8, &user_event_id, repo_event.repo.user_id); │ │933 try std.testing.expectEqualStrings("ziglings", repo_event.repo.name); │ │934 + │ │935 + // get the repos created by the user │ │936 + const user_id_to_repos_cursor = try haxy_moment.getCursor(hash.hashInt(repo_opts.hash, "user-id->repos")) orelse return error.NotFound;│ │937 + const user_id_to_repos = try Repo.DB.HashMap(.read_only).init(user_id_to_repos_cursor); │ │938 + │ │939 + const user_repos_cursor = try user_id_to_repos.getCursor(hash.hashInt(repo_opts.hash, &user_event_id)) orelse return error.NotFound; │ │940 + const user_repos = try Repo.DB.CountedHashSet(.read_only).init(user_repos_cursor); │ │941 + │ │942 + try std.testing.expectEqual(1, try user_repos.count()); │ │943 + │ │944 + try std.testing.expect(null != try user_repos.getCursor(hash.hashInt(repo_opts.hash, &repo_event_id))); │ │945 } │ │946 } │ │947 │ ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯