We mark it as a "gift item" because that's how KoL has it tagged.brick
This is a brick, which has been expertly balanced for throwing. It even has a piece of string tied around it so you can attach a note. It's these little touches of quality that really make for an enjoyable vandalism experience.
Type: usable (self or others)
Cannot be traded or discarded
Gift Item
We mark it as a "gift item" because that's how KoL has it tagged.
...
Considering that KoL marks it as a "gift", I find it difficult to see why KoLmafia calling a "gift" is a bug.
I think $item[brick].gift should reflect KoL's definition of whether or not it's a gift item but is_giftable($item[brick]) should reflect what can be done with the item.