the reference price section is worth a closer look since your sample record leaves those fields empty. pinning to major v3 is the safer route, cause pip won’t upgrade an existing v2 install on its own. the schema table is missing 13 fields that appear in your own record, such as unitprice, condition and labels.
also the table of contents lists a pricing section and a conclusion that aren’t in the body. the dataset snippet loads everything in one call without checking the total, so iterate_items() with a count check would match the memory claim better