I'm working on specifying a new exotic object type that is somewhat similar to integer-indexed exotic objects. One interesting thing I am wondering is whether I need to define [[Get]], [[Set]], and [[HasProperty]] too, or whether defining only [[GetOwnProperty]] and [[DefineOwnProperty]] would suffice.
My suspicion is that only defining the more fundamental traps would suffice. However, I noticed that integer-indexed exotic objects define all five. Is there any observable reason for this, or is it a spec-level optimization?